I have an exercise in group theory which asks to show that conjugacy classes commute even though the group is not abelian, i.e. that $C_1C_2 = C_2C_1$ for any classes $C_1$ and $C_2$.
The proof given in the solution goes as follow. By definition, $gC_2g^{-1} = C_2$ for any group element $g$. Hence for any $a \in C_1$ we have $aC_2=C_2a$. As $a$ was arbitrary, $C_1C_2 = C_2C_1$ follows. The argument looks reasonable, but I'm still not sure about.
I tried a different proof on my own. Although not stated in the exercise, presumably we define $C_1C_2 = \{(gag^{-1})(hbh^{-1})|g,h \in G\}$ where $G$ is the group and $a \in C_1$ and $b \in C_2$. To show that $C_1C_2 = C_2C_1$ we show that $C_1C_2 \subseteq C_2C_1 $ and $C_2C_1 \subseteq C_1C_2 $.
To show $C_1C_2 \subseteq C_2C_1 $ we pick some element $(g_1ag_1^{-1})(h_1bh_1^{-1}) \in C_1C_2$ and show that there must exist $g_2,h_2$ such that $(g_1ag_1^{-1})(h_1bh_1^{-1}) = (h_2bh_2^{-1})(g_2ag_2^{-1}) \in C_2C_1$. Clearly we need $h_2 = g_1ac$ and $g_2^{-1} = d^{-1}bh_1^{-1}$ for some $c,d$. Then $$(g_1ag_1^{-1})(h_1bh_1^{-1}) = (h_2bh_2^{-1})(g_2ag_2^{-1}) = g_1a(cbc^{-1}a^{-1})g_1^{-1}h_1(b^{-1}dad^{-1})bh_1^{-2}$$
Thus we need $cbc^{-1}a^{-1}=e$ and $b^{-1}dad^{-1}=e$, but this implies that $a$ and $b$ are conjugate, i.e. that $C_1=C_2$.
Could somebody point out what goes wrong here?