For Enterprise Windows Desktop development, that can be a mixed bag of anything, Java, C#, C/C++, VB.Net, VBA, Erlang, COBOL.Net, etc.
Java looks awful on the desktop and Java on Windows is an extremely memory hungry way to do, well, anything vs .NET. Java itself is on shaky ground anyway - the only possible future it has now is if Oracle can be persuaded to flog it to Google. If Google about face and use something else for Android, then the gig is up.
C++ may be fine for pseudo real time apps, but then, most LOB apps aren't real time. C++ will always be with us and is a wonderful language in its own right, but its not about to unseat .NET any time. Ever.
VB.NET/COBOL.NET can't exist without C#. .NET may be the framework, but C# is the language designed for that framework.
VBA.... not for anything outside of Office macros really.
Erlang... great at what it does but its aimed more at switches than desktops. The only app I've seen in 20 years as a professional that was written in Erlang and runs on Windows is RabbitMQ.
Things C# has in its no other languages have :
Visual Studio - head and shoulders above all other IDEs, and by a very long way too.
.NET integration with Windows.
Very large pool of developers.
Its MicroSoft's strategic language (No MS, no Windows, so this debate becomes moot).
Frankly, its a significantly better all rounder than any/every other language on Windows (important caveat).
 - Yes, all .NET languages can claim most of these, but C# is .NETs lingua-franca.