@F_GXdx: Da hast Du was falsch verstanden. In einer .NET-Anwendung kannst Du Klassen oder Bibliotheken verwenden, die in verschiedenen Sprachen geschrieben wurden. Es gibt aber keine automatische Umwandlung von Code in z.B. VB.NET in Code der in C#.NET gechrieben wurde. Darüber hinaus ist C# die von MS präferierte Sprache und ich kann niemanden empfehlen, im .NET-Umfeld mit etwas anderem anzufangen. Das fängt bei Kleinigkeiten wie der Code Inspection an und hört bei modernen Sprachkonstrukten auf. Oder mit anderen Worten. Für C# bietet das Visual Studio die beste Unterstützung beim Entwickeln und man muß sich keinen Wolf tippen.
@Daaron: Was heißt denn an Microsoft ketten? Es ging ursprünglich darum, was man gut lernen kann. Außerdem herrscht hier allgemeiner Konsens, daß man relativ einfach neue Konzepte und Sprachen erlernen kann, wenn man in einer beliebigen Sprache groß geworden ist und ein gewisses Skillevel erreicht hat. Grabenkämpfe sind also sinnlos.
Außerdem verfolgt MS mit .NET den gleichen Ansatz, den vor Jahren SUN mit Java verfolgt hat. Es steht jedem frei eine CLR zu entwickeln. Mono ist dafür ein bekanntes Beispiel. Darüber hinaus finde ich es erstaunlich, wieviel Kraft Microsoft in .NET steckt. Wenn man sich dagegen ansieht, wie Oracle Java behandelt, sehe ich alle Vorteile bei Microsoft. Anscheinend bewegst Du Dich in anderen Bereichen der riesigen IT-Welt, aber Du kannst mir glauben, daß .NET-Entwickler aktuell wie verrückt gesucht werden. Wenn Du mir nicht glaubst, dann erstell ein Profil bei Monster.de oder einer anderen Plattform Deiner Wahl und behaupte, Du wärst ein .NET-Guru.
Und bevor wir uns mißverstehen, ich will niemanden missionieren und natürlich macht MS viel Mist. Ich kenne aber auch keine andere Firma, die es besser macht. Open Source ist auch kein Heilsbringer, da es in vielen geschäftlichen Bereichen nicht eingesetzt werden darf.