I use C# a lot (primary language used in my course) and despite some retarded shit, i like it a lot. I dispise javascript though, and generally any language without strong type systems. It can be usefull for some things, but it really hinders productivity and allows me to make too many mistakes. Strongly typed language with abilities to implicitly override it are the best tbh. C# doesnt really offer that either.

The main gripe with C# is the .net framework and lots of the localisation shit. For example, it interprets commas and points differently in numbers based on your locality, which means the code isnt portable to other machines, which is a gigantic flaw in the design.