C# sans hésitation.
VB.NET a été conçu dans l'unique but de convertir les utilisateurs de VB à .NET
C'est un langage "batard", qui fait le lien entre les notions de VB et les notions de .NET
C# est un langage "neuf" (même s'il est fortement basé sur C++ et Java) et totalement conçu pour l'architecture .NET uniquement.
Même si les exemples sont rares, un certain nombre de fonctionnalités de .NET ne sont pas portées en VB.NET, mais existent en C# (bon, j'ai lu aussi que même C# n'implémente pas toutes les fonctionnalités de .NET, mais quand même plus que VB.NET)
De plus, que ce soit ici ou ailleurs, tu trouveras plus d'aide, exemple, tutoriaux en C# qu'en VB.NET (c'est vrai aussi pour les livres, mais j'ai pas de référence à te donner par contre)