$L1 = (a^*+b)^*$ accepts all strings that have any number of a’s and any number of b’s.
$L2 = (a + b)^*$ also does the same.
The extra * over a in the first language is redundant as the language L1 would anyway contain strings with all possible combinations of a and b.
Thus, the two languages are one and the same.
In fact, $(a+b)^* = (a^*+b^*)^* = (a^*+b)^* = (a+b^*)^*$
All of these languages are equivalent to each other.
Clearly, $L1 = L2$.
$\therefore$ Option C is correct.