I know this is an old thread. But I think there still is a point missing, so if people still come to this post for reference, let me have a swing at it.
I want to argue from a mathematical standpoint that is somewhat geometric. We want to take vectors from some vector space $V$. We will especially not demand that $V$ be an $\mathbb{R}^n$ for some dimension $n$, but let's say for simplicity that $V$ is finite dimensional. There are two different kinds of operations on this vector space that are relevant in the usual tensor picture, one being $\begin{pmatrix}0\\2 \end{pmatrix}$ tensors - which are easily described with no technical clutter - and the other are linear maps described by $\begin{pmatrix}1\\1 \end{pmatrix}$ tensors - which require technical clutter, so we stay brief here. We will also need to talk about bases. So let's go in three steps.
Premature Postscript: This grew a bit out of proportion. I tried to elaborate because I know that my students often battle handwavy and brief answers that don't stretch the important cues.
A good source to get into the matter (and very readable) is Nadir Jeevanjee's Introduction to Tensors and Group Theory for Physicists.
$\begin{pmatrix}0\\2 \end{pmatrix}$ Tensors
- Without much ado, we can define a $\begin{pmatrix}0\\2 \end{pmatrix}$-tensor to be a bilinear map $T$ that eats two vectors $v$ and $w \in V$ and spits out a real number $T(v,w)$. Written a bit more formally:
$$T : V \times V \to \mathbb{R}, \qquad (v,w) \mapsto T(v,w) \in \mathbb{R}.$$
For those scared by the math notation, don't worry, it's really just the prose written above. The word bilinear is especially important. It means that the tensor is linear in both arguments. Otherwise, it would be a rather random map, but the linearity is really what gives tensors their characteristic properties.
This is it. That's really what a tensor is: it takes two vectors and spits out a real number. And it does so in a linear fashion.
This definition is independent of the vectors space $V$, tensors can be described on any vectors space. An example for the vector space $V$ could be the space of all the possible velocities a billiard ball could have (it is a vector space because you can stretch and add velocities, and there really isn't that much more for some set to qualify as a vector space). And a tensor? As mentioned above, any multiniear map will do, but something meaningful to physisc could be the "kinetic energy tensor"
$$ T(v,w) = \frac{m}{2}v \cdot w,$$
whose diagonal is exactly $T(v,v) = E_{\textrm{kin}}(v)$.
Now, notice one thing: Never in this definition or the example have we mentioned anything about coordinates or $\mathbb{R}^3$. This is important. The tensor is an object that can exist in its full splendor, free and independent of any coordinate system. To a theoretician (or any physicist), this is a pleasing result: There is no experiment out there that can determine whether the coordinate system of the world is cartesian or polar or spherical. These are figments of the human mind. A good theory shouldn't start out depending on an arbitrary choice, it is better if tensors are well-defined entities before we get lost in coordinate systems. And that's what we did here.
Choosing a Basis
But then again, our minds work pretty well in coordinate systems, or at least they were well trained to do. So what happens if we choose a basis? Then the vectors $v,w \in V$ can be decomposed into a sum over the set of basis vectors $\{e_i\}$ times respective scaling factors $\{v^i\}$ for each of them. With the sum convention:
$$ v = v^i e_i, \qquad w = w^i e_i.$$
We plug it into the tensor definition and see what comes out.
\begin{align}
T(v,w)
&= T(v^i e_i, w^j e_j)\\
&= v^i T(e_i, w^j e_j)\\
&= v^i T(e_i, e_j) w^j \\
&=: v^i T_{ij} w^j.
\end{align}
The first equality is just insertion (with proper care for the indices), the second equality is the linearity of the first argument ($v^i$ is just a real number, it can be pulled out), the third equality is the linearity in the second argument, and finally we introduce the definition
$$T_{ij} := T(e_i,e_j).$$
This is a new quantity we defined by taking the tensor and applying it to all pairs of basis vectors. If the vector space has dimension $n$, then we get $n^2$ real numbers, while the components $v^i$ and $w^j$ each form $n$ real numbers.
And now one comes up with an entirely arbitrary way of storing all this information: matrices. A matrix in itself is nothing more than a table (they were, historically, even called tables for a while). Mere MS-Excel spreadsheets. But motivated by the equation that we just derived, people came up with the idea: hey, let's arrange the $v^i$ and $w^j$ into these rows and columns of numbers and let's arrange the numbers $T_{ij}$ into this nice square block of numbers. And to remember how to deal with them, let us introduce a way to multiply them with one another.
A matrix (including square matrices in $\mathbb{R}^{n \times n}$ as well as row matrices in $\mathbb{R}^{1\times n}$ and column matrices in $\mathbb{R}^{n \times 1}$, commonly referred to as vectors) is, as mentioned in another answer, nothing but a way to store information. The matrix multiplication rule ("row times column") is additional information on top of that. It's just a way to correctly handle the information stored in the matrix and the vectors, which is bare real numbers.
This is the sense in which we consider vectors to lie in some $\mathbb{R}^n$ and tensors to be matrices in $\mathbb{R}^{n \times n}$. Vectors actually lie in some $n$-dimensional vector space $V$, and tensors are bilinear maps that take two of these vectors and give a real number. However, after choosing a basis $\{e_i\} \subset V$, all the information we need to recover the full vector $v$ are its components $\{v^i\}$ in that given basis, and all we need to fully know a tensor $T$ are its values on the basis vectors $\{T_{ij}\} = \{T(e_i,e_j) \}$. This pushes the basis under the rug, but then weird stuff happens when one changes bases.
Tensors as Linear Maps
So why are most answers here centered around tensors being linear maps that take a vector in $\mathbb{R}^n$ to another vector in $\mathbb{R}^n$? Because of course there is a close similarity.
We look at the coordinate representation of the tensor multiplication again. There, we wrote
$$T(v,w) = v^i T_{ij}w^j.$$
This bears close similarity to the coordinate representation of the inner product,
$$v \cdot u = v^i u_i,$$
we just need to replace
$$u_i = T_{ij}w^j = T(e_i,e_j)w^j = T(e_i,w^j e_j) = T(e_i,w)$$
in the equation.
In that sense, we find a new way of understanding the tensor. Instead of just taking two vectors and returning a real number, we can consider the tensor to take a vector $w$, linearly transform it into a new vector $u$, and then calculate the inner product between $v$ and $u$.
An aside: At this point, I left out a few subtleties, because to get the full picture, we would need to further talk about the inner product. This is because the inner product defines the metric tensor (or vice versa), which we still need if we want to get from the covariant components of the $u_i$ to the contravariant components $u^i = \eta^{ij} u_j$. We will not dwell on this here. I suppose that was already discussed elsewhere, anyway.