C# is crap because it is a poor limited derivative of C++
crap reason    good reason    not sure
People also think C# is crap because it:
was made by Microsoft [crap good]
is not possible to alias generics and generally aliasing is an incompetent mechanism [crap good]
is Microsoft's butthurt reactionary responst to Java, when they realized they couldn't EEE Java. [crap good]