Meme avec .NET, on programme en Visual
Basic ou c# (ce dernier étant plus une politique commerciale qu'une aide au développeur).
D'après moi, la plate-forme .Net hérite de Java et Delphi.

Donc non, C# n'est pas un langage commercial. Il est destinés au programmeurs Objet, alors que VB.Net est plus utilisé par des développeurs procéduraux (même si les 2 langages sont équivalents). C'est un très bon langage qui corrige plusieurs défauts de Java :

* Impossible de récupérer plusieurs valeurs en sortie d'une méthode en Java (ie passage par référence de type de base)
* Nommage : les noms des accesseurs sont standardisés, et vérifiés par le compilateur (ce sont les "propriétés")
* Lors de l'implémentation de plusieurs interfaces, Java ne gère pas le cas de deux méthodes qui ont la même signature (2 méthodes homonymes peuvent signifier des choses différentes)
* En C#, on utilise des pointeurs de fonctions pour les évênements. C'est contestable, mais ça évite une instanciation supplémentaire qui a lieu pour les classes anonymes, avec souvent une unique méthode dedans...

Voili voilo. Je ne donne pas les inconvénients de la plate-forme .Net car ils sont déjà cités. Mais je n'ai pas rencontré d'inconvénients majeurs sur le langage C# proprement dit.

Thomas