Shannon theorem of perfect secrecy
If $c$ is a possible encryption for each $m \in M$, that means that for each message $m$ exists a key $k$ such that $Enc_k(m)=c$. Now, if you encrypt, you need to be able to decrypt. Since $c$ is fixed, the only variable for $Dec_k(c)=m$ is $k$. Since you need to be able to use the decryption process to get any value of $m$, that means that you have $|M|$ values of $k$.

In other words, you need to be able to go from the any value in the message space to any value in the ciphertext space (encrypt) and from any value in the ciphertext space to any value in the message space (decrypt), and for that you need $|M|=|C|$ keys.