C# has one of the best standard libraries out there (well documented, rather well designed, batteries-included, etc)
C# has a decent set of relatively modern language constructs, yet is easy enough to learn for a very large group of programmers.
C# is faster than most (but not all) languages sporting a comparable set of high-level features.
C# has excellent tool support, and was designed for enabling such tool support, making refactoring and code navigating easier than in any other language except Java.
C# has a large ecosystem and user-base, making it easy to find answers to problems and components that solve problems not covered by its standard library.
None of these items, in isolation, are special. Java arguably has a stronger ecosystem, but is a less powerful language. C++ is faster, Scheme is more elegant (according to many), and so on. But I know of no other language that has all these areas covered so well simultaneously. Scala comes close, but is arguably more difficult to learn, and lacks on the ecosystem area (not in terms of library support, but in terms of best practices and large user base). This might change, which would be lovely.
All other languages you mentioned strongly lack on at least one of the above-mentioned aspects.
I'm not saying that C# is god's gift to mankind and the only good thing out there. I'm only saying that you're dismissing it too easily.
There are sufficient people out there who really like this combination of features to support a vibrant open source community. Which is why this community exists. Why dismiss something that exists and works well?