Me ha tocado cambiar del mundo java al .Net y ... para variar, para mañana.

Intentaré ser breve: Una empresa quiere migrar sus aplicaciones hechas con formularios Access y un SQL Server a .Net. (Imposiciones cliente).
Me gustaría saber que diferencia hay entre usar c#, vb.net, J# ,......¿silverlight?.
¿Cómo es un MVC en .Net? ¿Existe MVC en .Net? ¿Hay "servlets"?
¿Qué lenguaje es más sencillo de "aprender"?
¿Visual Studio genera código?
¿Admiten todos los lenguajes los mismos "componentes" prefabricados?
Vamos, que necesito un poco de orientación para abordarlo.
Muchas gracias, un saludo.