Primär würde auch ich Dir zu C# raten, da es eben verbreiteter ist und eigentlich alles kann, was .NET bietet. Soweit ich weiß gilt dies nicht für jede Sprache, und auch VB.NET hat glaub ein paar Features weniger.
Ein anderer Grund, der gegen VB.NET spricht, ist die Syntax, und Du hast ja selbst schon gesagt, daß Dir bei vielen BASIC-Dialekten die Syntax nicht gefällt. Zwar hat sich für .NET einiges verbessert, aber insgesamt ist es schon noch teilweise sehr gruselig. C# hätte dann auch noch den angenehmen Nebeneffekt, daß Du Java quasi mitlernst. Es gibt zwar Unterschiede zwischen Java und C#, aber die sind weitaus geringer als die zwischen VB und PB. Somit wirst Du also, sofern Du mal in eine Situation kommst, wo Du Java benötigst, einen sehr sehr leichten Einstieg finden. Vielleicht ist es für Dich aber auch andersrum - vielleicht kannst Du ja bereits Java? In dem Fall brauchst Du Dich nur kurz über die Unterschiede informieren und kannst gleich loslegen

In solch einem Fall, also wenn Du einfach mal nur kurz was zusammenhackern willst, dann kannst Du dafür immer noch kurz VB.NET nehmen. Wie gesagt, der Code ist sogar mischbar, da letztendlich alles für .NET kompiliert wird. Und in VB solltest Du auch recht leicht einsteigen können. Ansonsten gibt's wie gesagt 'ne Tonne anderer Sprachen, z.B. kannst Du Boo benutzen (eine Python-artige Skriptsprache für .NET) oder sonst etwas, aber für große Projekte und auch für die persönliche Weiterbildung wird C# wohl die beste Lösung sein, zumindest zum "richtigen Lernen". Wenn Du dann parallel dazu noch ein bißchen in VB.NET oder eine andere .NET-Sprache reinschnupperst, dann ist das gewiß kein Fehler.An anderen Basic-Dialekten stört mich der (für mich) unschöne Code. Dafür spräche, dass es vermutlich schneller zum Ziel führt für kleinere Anwendungen.