Ja, Holy. Da stimme ich dir zu. Aber benötigt man Multicast-Delegates, Lamda-Expressions und LINQ um erfolgreich ein Programm zu entwickeln.
Das sind alles Features, die es einem Programmierer, der sich sehr gut mit dem Framework auskennt, ermöglichen noch flexibler zu sein. Aber wirklich
grundlegend für die Sprache sind diese Features partout nicht.
Die allgemeinen, d.h. fundamentalen Merkmale der Sprachen, wie z.B. Interfaces, Vererbung, Polymorphismus usw. sind identisch. Und erst mit diesen Konstrukten hat man aus meiner
Sicht all diejenigen Mittel in der Hand, die notwendig sind, um gute und wartbare Software zu entwickeln. Wenn ein Entwickler weiß, was ein IoC Container ist,
dann kann er diesen genauso gut in Java erzeugen wie auch in .NET.