Turing Machine equivalence in MinTM proof
How do we know that $MIN_{\mathrm{TM}}$ is inifinite?


There are infinitely many partial recursive functions (i.e., functions which are computed by TMs) and to each such function there is at least one TM which computes it and has minimal description.


  Why $C$ is equivalent to $D$?


Because of point 3., which essentially forces $C$ and $D$ to have the same behavior. In this case, yes, equivalence is used in the sense that $L(C) = L(D)$.


  Why "Because $C$ is shorter than $D$ and is equivalent to it, $D$
  cannot be minimal"?. Why do we expect $D$ to be minimal?


$D$ is minimal because $\langle D \rangle \in MIN_{\textrm{TM}}$. Recall that, by assumption, the enumerator $E$ only outputs descriptions in $MIN_{\textrm{TM}}$. The point is that $\langle C \rangle$ is fixed (because we have just provided a description for it), but $E$ gives us descriptions of TMs of arbitrary length indefinitely; hence, $E$ will eventually output some description which is longer than $\langle C \rangle$.