Is $M$ is a flat module over a Noetherian local ring, then it's free In Atiyah-Macdonald introduction to commutative algebra Exercise 7.15, it states that

Let $A$ be a Noetherian local ring, $\mathfrak{m}$ its maximal ideal and $k$ its residue field, and let $M$ be a finitely generated $A$-module. Then TFAE:
$1)$ $M$ is free
$2)$ $M$ is flat
$3)$ the mapping of $\mathfrak{m}\otimes M$ into $A\otimes M$ is injective
$4)$ $\operatorname{Tor}^A_1(k,M)=0$.

I think the proof of this is $1)\Rightarrow 2)\Rightarrow 3)\Rightarrow 4) \Rightarrow 1)$. But I need is $2)\Rightarrow 1)$. I already proved $1)\Rightarrow 2)$. How can I prove $2)\Rightarrow 1)$ directly?
 A: Hint:
You can directly prove that 2) implies 1): consider a free $A$-module $L$ such that $L/\mathfrak mL\simeq M/\mathfrak m M$. We have an exact sequence
$$0\longrightarrow K\longrightarrow L\longrightarrow M\longrightarrow 0 $$
which is pure (i.e. universally exact) since $M$ is flat. In particular, the sequence
$$0\longrightarrow K/\mathfrak mK\longrightarrow L/\mathfrak mL\xrightarrow{\enspace\simeq\enspace} M/\mathfrak m M\longrightarrow 0$$
is exact, so $K=\mathfrak m K$. Can you conclude now?
A: Given the comments, here's how one can prove 3) => 1) without mentioning Tor. The point is that we need to prove a special case of so-called "Tor-balancing", namely that if $\operatorname{Tor}^A_1(M,k) = 0$, then tensoring with $k$ preserves any exact sequence of the form $0\to C\to D\to M\to 0$.
This is not immediate from the definition of flatness of $M$, but follows exactly from this "Tor-balancing" thing, that I won't make precise here. So let me prove that lemma:

Lemma : suppose $M$ is flat. Then any short exact sequence of the above form is preserved by tensoring with $k$

(or in fact any $A$-module)
Proof: Write down the following commutative diagram, which can be seen as "tensoring our short exact sequence with $0\to m\to A\to k\to 0$:
$\require{AMScd}\begin{CD}& & & &&& 0 \\
& & & && @VVV\\&&C\otimes_A m @>>> D\otimes_A m @>>> M\otimes_A m @>>> 0 \\
&@VVV @VVV @VVV @VVV\\
0@>>>C @>>> D @>>> M @>>> 0 \\
&& @VVV @VVV @VVV @VVV \\
&&C\otimes_A k @>>> D\otimes_A k @>>> M\otimes_A k@>>> 0
\\ && @VVV @VVV @VVV @VVV \\
&& 0 @>>> 0 @>>> 0 @>>> 0\end{CD}$
Each column and each line is exact, the exact column with a $0$ on top is due to $M$'s flatness.
Now let $x\in C\otimes_A k$ be mapped to $0$ in $D\otimes_A k$. Lift it to $y\in C$ by surjectivity of $C\to C\otimes_A k$. Then $y$ is mapped to $0$ if you go to $D$ and then $D\otimes_A k$, so that the image of $y$ in $D$ must lift to some $t\in D\otimes_A m$ by exactness of that column.
This $t$ goes to $0$ if you go to $M\otimes_A m$ and then to $M$ (because its image is then the image of $y$ along $C\to D\to M$), and thus by injectivity of $M\otimes_A m\to M$, $t$ must map to $0$ in $M\otimes_A m$. Thus $t$ must lift to some $u\in C\otimes_A m$.
But now by injectivity of $C\to D$, $u$ must be a lift of $y$, so that $y$ maps to $0$ in $C\otimes_A k$, so $x=0$, so $C\otimes_A k \to D\otimes_A k$ is injective; which is what we needed.
From there on you can follow Bernard's answer, namely : find a basis of $M\otimes_A k$, and lift it to a family in $M$, and so a surjective morphism $A^n\to M$, with kernel $K$. This surjective morphism is further an isomorphism upon tensoring with $k$, so that you have an exact sequence $0\to K\to A^n\to M\to 0$ of the form above, which must be preserved by tensoring with $k$.
Therefore, since $k^n\to M\otimes_A k$ is an isomorphism, $K\otimes_A k = 0$. Because $A$ is noetherian, $K$ is finitely generated, and so this implies (Nakayama's lemma) that $K=0$.
