Let $A,B,C$ be finitely generated abelian groups. I want to show that $$A\oplus C \cong B \oplus C $$ then $A \cong B$. My idea is as follows: we begin by noting that this has already been proved for $A,B,C$ finite. Let
$A = \mathbb{Z}^{k_1}\oplus A'$
$B = \mathbb{Z}^{k_2}\oplus B'$
$C = \mathbb{Z}^{k_3}\oplus C'$
Then we have $$\mathbb{Z}^{k_1+k_3}\oplus A'\oplus C' \cong \mathbb{Z}^{k_2+k_3}\oplus B'\oplus C'$$ Therefore $k_1 = k_2$ and then I would like to divide out by the infinitary parts to get $$A'\oplus C'\cong B'\oplus C'$$ and since all groups are finite we can use previous theorems to derive $A'\cong B'$ hence $A\cong B$. However I am not sure how to get past the 'dividing bit' as to assume that we can cancel would be circular. How should I proceed? Is the assumption that finitely generated abelian groups cancel even true?
This follows from the classification of finitely generate abelian groups, more precisely from the fact that every finitely generated abelian group can be written as
$$\mathbb{Z}^n\oplus\mathbb{Z}_{p^{k_1}}\oplus\cdots\oplus\mathbb{Z}_{p^{k_m}}$$
and this decomposition is unique.
So assume that $A\oplus C\simeq B\oplus C$. Decompose each group:
$$A=\mathbb{Z}^{n_A}\oplus(\mathbb{Z}_{p^{*}})$$ $$B=\mathbb{Z}^{n_B}\oplus(\mathbb{Z}_{q^{*}})$$ $$C=\mathbb{Z}^{n_C}\oplus(\mathbb{Z}_{r^{*}})$$
I've obviously simplified the right side, they can have multiple elements. Anyway we have
$$\mathbb{Z}^{n_A}\oplus(\mathbb{Z}_{p^{*}})\oplus \mathbb{Z}^{n_C}\oplus(\mathbb{Z}_{r^{*}})\simeq\mathbb{Z}^{n_B}\oplus(\mathbb{Z}_{q^{*}})\oplus \mathbb{Z}^{n_C}\oplus(\mathbb{Z}_{r^{*}})$$
i.e.
$$\mathbb{Z}^{n_A+n_C}\oplus(\mathbb{Z}_{p^{*}}\oplus\mathbb{Z}_{r^{*}})\simeq \mathbb{Z}^{n_B+n_C}\oplus(\mathbb{Z}_{q^{*}}\oplus\mathbb{Z}_{r^{*}})$$
The uniqueness kicks in and gives us $n_A+n_C=n_B+n_C$ hence $n_A=n_B$. Analogously the uniqueness implies $(\mathbb{Z}_{p^*})\simeq(\mathbb{Z}_{q^*})$ for the finite case.