Вообще говоря, я считаю, что языки действительно одинаковые. Это удобство синтаксиса. Лично мне нравится, что в одной строке может происходить несколько событий. Когда я переключился на использование C, Java, JavaScript, Perl и языков в фигурных скобках, мне стало легче понять, потому что вы можете увидеть гораздо больше, используя меньшее количество символов.
Что касается хороших фреймворков, написанных на VB.NET, проверьте все, что написано для Dot Net Nuke (включая).
Еще один хороший момент заключается в том, что большинство шаблонов проектирования, TDD, DDD, Agile и т. Д. Используют Java в качестве примеров, что очень похоже на C #. Это все равно, что пытаться перевести с английского на английский, а не с испанского на английский.
Я пишу на VB.NET и C# попеременно (примерно 50/50) в приложениях, которыми я управляю, и у меня всегда было небольшое предпочтение VB.NET (я программирую на языках, родственных BASIC, уже 25 лет, с 9 лет, но только около 15 лет на языках, основанных на C).
Тем не менее, я считаю, что C# - лучший язык для библиотек.
Это не имеет ничего общего с ограничениями VB.NET и все связано с ограничениями C#.
Я хочу, чтобы мои библиотеки было легко вызывать как из VB.NET, так и из C#. Когда я пишу на C#, я обычно обращаю внимание на вещи, которые важны при вызове кода из C#. Два примера этого - чувствительность C# к регистру и отсутствие необязательных параметров. Но когда я пишу библиотечный код на VB.NET, я не так внимателен к вопросам, которые могут сделать мой API менее дружелюбным для вызывающих C#.