I have liked where the language has gone as well. I actually think that C# is a lot like Scala, with more mainstream uptake. It is not a small language, it is not simple, but it is a true multi-paradigm toolkit. You can do straight-out functional programming, lazy evaluation, OO, all out of the box. You can mix metaphors where appropriate, and the potential to end up shooting yourself in the foot is much reduced from that of C++. My biggest gripe has always been the vendor lock-in, there just don't exist the set of tools that ship with Java, particularly for profiling and configuring the VM.