I'll never understand this sort of attitude. I would hazard a guess that this person has never programmed using Visual Studio and C#. If he's worked in it for a while and doesn't like it, that's one thing, but I bet he hasn't ever brought up VS. I've met a lot of people like this. FOrtunately for them, they worked for the govt. and it didn't really maater what they programmed in because they wouldn't produce much and the project would fail in two years, to be replaced by another.
I've programmed in many languages, only one did I absolutely hate, and that was Ada. But,, even though I hated the language, I saw an opportunity to do a set of binding to X Windows. I spent two months writing that, then sold through a compiler vendor. The language was dying, but most government programs were required to buy the compiler and the bindings. They would then stick the thing on the shelf to gather dust. I would get a check for about $5k a month for royalties on a piece of software that no one ever used. This went on for two years, before the market finally died.
I've programmed in many languages, C#, Java, C++, C, FORTRAN, Lisp, PL/I, COBOL, Ada, Smalltalk, assembly, and a smalltalk variant that I devised at one point. I've learned something from all of them. Well, with Ada, I think all I learned is how not to design a language. I think changing languages every now in then ultimately makes you a better programmer.
Personally, I like C# and the whole
Having said this, if someone came to me and offered me double what I make today to work in Java, I'd take it. When it comes donw to it, If I wasn't get paid, I wouldn't go in and sit in a cube every day and write code, i'd find something else to do, so why not make the most I can. I may not like working in Java as much as C#, but it won't kill me and the reality is, the project, the people and the environment are more important for a good job than whether you code in C# or Java.