The Tor functors are the derived functors of the tensor product. The starting observation is that if $0 \to M' \to M \to M'' \to 0$ is a ses of modules and $N$ is any module (let's work over a fixed commutative ring $R$), then $M' \otimes N \to M \otimes N \to M'' \otimes N \to 0$ is exact, *but* you don't necessarily have exactness at the first step. (This is what "the tensor product is right-exact" means.)

Now, whenever you have such a sequence that fails to be short exact at just one step, the general philosophy is that it should be the end of a long exact sequence. The long exact sequence should be like
$$\dots \to ?_1 \to ?_2 \to ?_3 \to M' \otimes N \to M \otimes N \to M'' \otimes N \to 0$$
where the question marks indicate that we don't know what goes there yet.

The general approach is provided by the theory of derived functors. Derived functors allow one to construct, associated to a right (or left) exact functor $F$, a collection of functors $L_i F$ for $i \geq 0$ (I'm just going to handle the right-exact case henceforth), such that for each ses
$0 \to M' \to M \to M'' \to 0$, the "almost ses"
$$FM' \to FM \to FM'' \to 0$$
can be completed to a les
$$\dots \to L_2F(M'') \to L_1F(M') \to L_1F(M) \to L_1F(M'') \to FM' \to FM \to FM'' \to 0.$$
This long exact sequence relies on "connecting homomorphisms" $L_nF(M'') \to L_{n-1}F(M')$, which are required to be functorial in the ses.

The exact construction of a derived functor uses projective resolutions of the object $M$ and a reasonable amount of diagram-chasing. I will refer you to books on homological algebra.

So suppose we consider the functor sending $M \to M \otimes N$. Its derived functors are denoted $\mathrm{Tor}_i(M,N)$. This means that the Tor functors provide the missing part of the les that expands out the "almost ses" of the tensor product above.

One reason the Tor functors are so useful is that they provide a very effective criterion for flatness. Recall that a module $N$ is flat if tensoring with it is exact. When you derive an exact functor, you just get the initial functor in dimension zero (actually, you always do for this), and then zero elsewhere. So if $N$ is flat, $\mathrm{Tor}_i(M,N) = 0$ for $i>0$. In fact, using the les, one can easily show that the implication is reversible, even if one only has $\mathrm{Tor}_1(M,N)=0$ for all $M$.

Let me give an example where things work out very nicely. If $R$ is a noetherian local ring with residue field $k$, and $M$ is a finite $R$-module, then it turns out $M$ is *free* if and only if $\mathrm{Tor}_1(k,M)=0$; in particular, freeness is the same thing for flatness (under these hypotheses).
(For a proof, see the argument behind Theorem 3.2 in ch. 14 of http://www.people.fas.harvard.edu/~amathew/CRing.pdf.)

An application of this is provided by the observation (which can be deduced from this) that if the $\mathrm{Tor}$ functors of the pair $(k,k)$ vanish in high dimension, then the global dimension of the ring is finite. This is fairly interesting because the global dimension is a statement about all modules (and, strictly speaking, involving the functors $\mathrm{Ext}$ that derive Hom, not Tor), while the above reduction is to one involving only the residue field.

This is, in fact, the key observation behind one half the proof that a noetherian local ring is regular iff its global dimension is finite. This argument can be found in EGA 0-IV, sec. 17 (it doesn't presuppose anything beyond dimension theory, which you can read about in sec. 16).