Following are difference between Asp.Net MVC and Web Form Which lead to Asp.Net MVC.

1. Asp.Net MVC uses loosely couple architecture.

2.  Asp.net MVC use all HTML control.

3.  Asp.net MVC  Enables the full control over the rendered HTML.

4. Asp.net MVC  Provides clean separation of concerns(SoC).

5. Asp.net MVC  Enables Test Driven Development (TDD).

6. Asp.net MVC  Easy integration with JavaScript frameworks

7. Asp.net MVC  Following the design of stateless nature of the web.

8. Asp.net MVC  RESTful urls that enables SEO.

9. Asp.net MVC  No ViewState and PostBack events