How is half of square CFEG, that is triangle FGC is equal to triangle FCD?
I was explained that it's because the base of the triangles are the same, that is CF.
But they don't have the same height?
HOW?
edit: I made DGE collinear.
Still doesn't make sense to me. How is GC the height of triangle GCB?
They actually do have the same height, if the height is measured as the altitude on $\overline{CF}$. The reason why you're not seeing it is because the drawing is inaccurate: in fact, points $D$, $G$, and $E$ are collinear if $\angle DGC$ is a right angle. Since $D$, $G$, $E$ all lie on a common line, and this line is parallel to $\overline{CF}$, as the opposite sides of a square are parallel, it immediately follows that $$|\triangle DCF| = |\triangle GCF|,$$ since they share the same base $CF$, and the height is equal to the length of $GC$.