No torsion in $H^1_c(X,\mathbf{Z})$?
As Joe Johnson says in his now deleted post, in the compact case $H^1_c(X)=H^1(X)$. Now you can use the fact that $H^1(X)=Hom(\pi_1(X),\mathbb Z)$, which is an abelian group under the operation $(\phi_1+\phi_2)(g)=\phi_1(g)+\phi_2(g)$. Since $\mathbb Z$ is torsion-free, so is this group of homomorphisms. Thus $H^1(X)$ is indeed torsion-free.
This is not true for homology though, since $H_1(\mathbb{RP}^2)=\mathbb Z_2$.
[Edited to remove an alternative false proof.]
I just noticed this!
Why not just argue sheaf-theoretically? We have the exact sequence of sheaves $0 \to \mathbb Z \to \mathbb Z \to \mathbb Z/p \to 0,$ which induces a corresponding short exact sequence of $H^0_c$s, and hence we get a long exact sequence beginning with $H^1_c$: $$0 \to H^1_c(X,\mathbb Z) \to H^1_c(X,\mathbb Z) \to H^1(X,\mathbb Z/p) \to \ldots.$$ The fact that the first arrow is injective is the torsion-freeness statement that you want.
Summary: thinking sheaf-theoretically, the same argument that works for $H^1$ works for $H^1_c$ as well.