Le differenze di prestazioni si devono calcolare per essere notate, se l'applicazione è scritta in maniera efficiente non si notano anche se ci sono, data anche la velocità degli attuali pc.
In .Net i linguaggi non sono direttamente compilati, l'ultima compilazione è affidata al Framework, questo per adattare l'applicazione al sistema su cui deve girare, per questo puo' essere meno veloce un'applicazione .Net, ma dipende anche dal tipo di compilazione che effettui. Non so quale sia quella che utilizzi, di più sui metodi di compilazione in .Net non ti so dire in quanto è un'argomento che non ho ancora studiato.
Per quanto riguarda C#, è indirizzato a chi proviene dal C e Java, le differenze con VB.Net non ci sono, a livello di codice sono minime, spesso sono molto simili il codice VB.Net ed il codice C#. Te ne rendi conto guardando il codice nel linguaggio di compilazione intermedio (IL), spesso cambia solo l'header e qualche dichiarazione, il resto è identico.
Solo con C++.Net puoi scrivere codice unmanaged, che non necessita del Framework, e quindi avere prestazioni maggiori.
Comunque le differenze di prestazioni non sono evidenti se il codice è ben scritto.