Well, it will never get that bad I suppose, but the more I learn about C#, the more I wonder.
C# started life as something similar to Java, but with a little bit more language facilities like delegates. Then they added generics. And now they have LINQ, and Expression stuff which looks like abstract syntax tree manipulation.
I thought the CLR was all about making it easier to tie different languages together on the same runtime. They shouldn’t need to keep extending C# to incorporate all kinds of features, in the process making it a bigger and bigger language. Why not just implement different specialized languages that run on the same runtime and can use C# modules really easily?
Maybe people do want one uber-language that can handle all the weird things they want to do. But the more C# I know, the more it seems to be getting too big to me.