You're advised not to calculate the inverse of C using Gauss' method.
You'd use LU decomposition to reduce C to lower and upper triangular form, then forward-back substitution to calculate the solution.
We're assuming, of course, that C has an inverse. It may not. If C is square, it can't have a zero determinant.
If the number of columns exceeds the number of rows, multiply both sides by C(transpose) to get a square matrix and and solve that to get a least squares solution.
If the number of rows exceeds the number of columns, use Singular Value Decomposition instead of LU to get the best solution you can. It'll tell you the size of C's null space.