VB.Net ist und wird wohl auch immer die Luschensprachen bleiben.
Im Sprachdesign wird immer darauf Rücksicht genommen, dass die Benutzer ja nur VB-Monks sind. Beispiel: keine anonymen Methoden für VB. grob Heijlsberg zitiert: "Wir sind schon froh, dass die User langsam lernen was Vererbung heißt, wir wollen sie nicht überfordern".
Außerdem ist VB.Net nicht wirklich statisch prüfbar. Du kannst einfach ohne Cast X als Y benutzen und in Wirklichkeit werden dynamic Invokes kompiliert.
Das alte VB war schon witzlos (Delphi hatte besseres RAD
und einen richtigen Compiler), VB.Net ist einfach nur eine absolute Nullnummer.
Verglichen mit C# ist der IDE support lächerlich, und die Syntax, die siesich für Events und Properties ausgedacht haben...