Two term free resolution of an abelian group. This is probably a very easy question but I think I am missing some background regarding free abelian groups to answer it for myself.
In Hatcher's Algebraic Topology, the idea of a free resolution is introduced in the section on cohomology.

A $\textbf{free resolution}$ of an abelian group is an exact sequence $$ \cdots \to F_2 \to F_1 \to F_0 \to H \to 0$$ such that each $F_i$ is free.

Let $f_0:F_0 \to H$ and choose a set of generators of $H$. Let $F_0$ be the free abelian group with basis in one-to-one correspondence with this set of generators.
Then we can easily form the two term free resolution
$$\cdots \to 0 \to Ker(f_0) \to F_0 \to H \to 0$$
Why is $H$ an abelian group a necessary condition so that there necessarily exists resolution of the form $0 \to F_1 \to F_0 \to H \to 0$?
For what non-abelian group does such a free resolution not exist?
 A: An abelian group is the same thing as a module over the ring $\mathbb{Z}$ (think about it). The ring $\mathbb{Z}$ is a PID, thus submodules of free $\mathbb{Z}$-modules are free. Reformulated in the context of abelian groups, submodules of free abelian groups are free abelian. You can use this fact to show that every abelian group has a length 2 free resolution (this works over any PID $R$, in particular $R = \mathbb{Z}$):

Let $P_0 = \bigoplus_{m \in M} R_m$ be a direct sum of copies of $R$, one for each element of $M$ (the index is just here for bookkeeping reasons). This is a free $R$-module. This maps to $M$ through $\varepsilon : P_0 \to M$ by defining $\varepsilon_m : R_m \to M$, $x \mapsto x \cdot m$ and extending to the direct sum (coproduct).
The kernel $P_1 = \ker(P_0 \to M)$ is a submodule of the free module $P_0$, hence it is free as $R$ is a PID. Thus you get a free resolution (exact sequence):
$$0 \to P_1 \to P_0 \to M \to 0.$$

In the above proof, notice that "free $\mathbb{Z}$-module" is also the same thing as "free abelian group", so everything works out. You can also choose a set of generators for your module $M$, but I feel it's cleaner by just taking every element of $M$ and be done with it.
As Bernard mentions in the comments, for finitely generated abelian groups it's easy to see from the structure theorem (e.g. $\mathbb{Z}/n\mathbb{Z}$ has the free resolution $0 \to \mathbb{Z} \xrightarrow{\cdot n} \mathbb{Z} \to \mathbb{Z}/n\mathbb{Z} \to 0$).
Other people have already commented on the difference between resolutions of abelian groups and groups in general. Surprisingly enough, subgroups of free groups are free too by the Nielsen–Schreier theorem, and the standard proof even uses algebraic topology! It all comes around. So you can directly adapt the above argument to show that every (not necessarily abelian) group has a free resolution of length at most two:

Let $G$ be a group. Let $P_0 = \bigstar_{g \in G} \mathbb{Z}_g$ be the free product of copies of $\mathbb{Z}$, one for each element of $g$. This is a free group. By the universal property of free groups, this maps to $G$ by sending $1 \in \mathbb{Z}_g$ to $g \in G$. The kernel $P_1 = \ker(P_0 \to G)$ is a subgroup of a free group, thus it is free itself, and you get a free resolution of $G$ of length at most 2:
$$0 \to P_1 \to P_0 \to G \to 0.$$

In the above proof, $\mathbb{Z}$ appears too, but for different reasons: it is the free group on one generator. It also happens to be the free abelian group on one generator, but that's not its role in the proof above. The groups $P_0$ and $P_1$ that appear in the proof are, in general, not free abelian.
A: When you switch to asking about nonabelian groups you need to be careful not to equivocate between two uses of the word "free." Free abelian groups are of course not the same as free groups, and any group which is a quotient of a free abelian group is of course necessarily abelian.
Groups do have "nonabelian free resolutions" in some sense, but the groups which appear in them are free groups, not free abelian groups. 
A: I don't actually know if every non-abelian group has a two term free resolution, but notice that free resolutions of non-abelian groups and free resolutions of abelian groups are entirely different things!
A free abelian group on two generators is the group $\Bbb Z\langle a, b\rangle$ consisting of sums of the form $n_1 a + n_2 b$, where $n_i \in \Bbb Z$. The free (non-abelian) group on two generators is the horribly gigantic group of finite words on $a, b, a^{-1},$ and $b^{-1}$. A product in this group looks like $(aaba^{-1}bab^{-1})(bab^{-1}a) = aaba^{-1}baab^{-1}a$.
At least classically, when one studies singular homology and cohomology, one takes coefficients in a module over some ring. In particular, abelian groups make for good coefficients. Non-abelian groups groups are excluded as they are not modules at all! This restriction still allows us to observe many interesting phenomena in topology through the lens of algebra without going off the deep end into crazy non-abelian group stuff!
