Why does magnesium form covalent bonds with carbon? According to my professor, magnesium and lithium form covalent bonds with carbon but calcium does not. He did not elaborate. 

Why is this so? The electronegativities are:

Mg — 1.31
Li — 0.98
Ca — 1
C — 2.55 

So a $\ce{C-Mg}$ bond would have an electronegativity difference of 1.24 and a $\ce{C-Li}$ bond would have an electronegativity difference of 1.57. Both are considered covalent. So how come a $\ce{C-Ca}$ bond wouldn't be covalent? There exists an electronegativity difference of 1.55 — comparable to the difference in the $\ce{C-Li}$ bond. 

I know that Mg likes to be tetra-coordinated (Grignards) but I don't think this has much to do with this discussion. So, what makes Mg and Li special compared to Ca?

Summary of possible explanations others have come up with


$\ce{Mg^2+}$ has an ionic radius 72 pm, $\ce{Ca^2+}$ has an ionic radius of 100 pm, and for $\ce{Li+}$, it's 76 pm. So perhaps the greater charge density of $\ce{Mg^2+}$ and $\ce{Li+}$ allow them to pull electrons toward themselves a bit more, thus making the bond more covalent in character? That being said, $\ce{Li+}$ has a single positive charge while $\ce{Ca^2+}$ has a double positive charge, and I haven't calculated the actual charge densities for any of these ions so I don't think we can come to a definitive conclusion here. 


http://www.wiredchemist.com/chemistry/data/metallic-radii
The crystal structure of calcium carbide gives a subtle hint of covalent bonding.  It looks like a rock salt structure, but note that the carbon atoms in the anions have their lone pairs directed towards the calcium atoms and so are favorably oriented for covalent overlap. The structure might be considered either a rock salt structure or a series of parallel $\ce{-Ca-C#C -}$ polymeric chains.



Source