ASP.NET MVC ha ganado mucha importancia para las aplicaciones web, ya que .NET se usa mucho en la industria.
Las aplicaciones web de Microsoft evolucionaron de ASP clásico a ASP.NET, que se basa en formularios web (para permitir que las habilidades que los desarrolladores de formularios VB6 Win ya tenían que traducir fácilmente a la nueva frontera de la web).
Desafortunadamente, Web Forms está basado en estado y HTTP (en el que se basa la web) no tiene estado, por lo que se necesitaban muchas soluciones desagradables debido a cosas como las vistas.
ASP.NET MVC permite que las habilidades que los desarrolladores de WebForms tienen que traducir a un marco web que tenga un buen SoC y que haya tenido mucho esfuerzo para ser comprobable (dado que WebForms no es muy comprobable, el equipo de MVC ha puesto mucho esfuerzo en el marco).
Dicho esto, no es una bala de panacea / plata, y como cualquier marco, hay momentos para usarlo y otros no. Esperemos que la gente no lo use para tratar de resolver todo, después de todo: cuando su única herramienta es un martillo, cada problema parece un clavo.