The two main arguments are:
1) C# needs more boilerplate class code than C++ or other languages. Wrong. It definitely needs less boilerplate code than C++ and is close to Python and Ruby.
2) C# and Visual C++ have huge class libraries, which makes it impossible to use without an IDE. I'm sorry, but I would always go for the language with the big class library, rather than the one without it. Also, C++ has fairly hefty Unix libraries, too.
I guess the real problem is sour grapes. For languages other than Microsoft's and Java (and maybe Lisp - I don't know), there aren't any good IDEs, which really understand your code, are stable and bug-free, and provide useful refactoring tools (e.g., change the name of a method and update all of its invocations). For one, the lack of a good IDE and toolchain really does reduce efficiency in large projects (although I would guess the average Rails project is not that large). It also steepens the learning curve. While learning Scala I've spent ours trying to find a mistake in a single line, which neither the IDE nor the compiler could reasonably point out, but Visual Studio would have explained right away.