Comparing ASP.NET MVC and ASP.NET
You should know that the ASP.NET MVC framework is not a replacement for ASP.NET Webforms—it's an alternative that you can choose if it is well-suited for a specific situation. Make sure that you weigh and compare the advantages of each solution prior to picking a specific direction.
The ASP.NET MVC framework offers the following advantages:
1. Complexity of application logic is made easier to manage because of the separation of an application into model, view, and controller.
2. It allows for easier parallel development; each developer can work on a separate component of the MVC pattern.
3. It provides good support for TDD, mocking, and unit testing frameworks. TDD enables you to write tests for an application first, after which the application logic is developed.
4. It does not use ViewState or server-based forms, which allows you to have full control over the application's behavior and HTML markup.
5. It uses RESTful interfaces for URLs, which is better for SEO (Search Engine Optimization). REST is short for REpresentational State Transfer—the concept of using URLs as the link to a resource, which can be a controller action method, rather than to physical files on the web server.
6. A typical page size is small, because no unnecessary data is transferred in the form of hidden ViewState data.
ASP.NET Webforms offers the following advantages:
1. It offers an event model over HTTP that is familiar to any developer. This event model also benefits the creation of business web applications.
2. It provides a lot of controls that are familiar to any developer—data components such as data grids and lists, validation controls, and so on.
These components are highly integrated in the development environment.
3. There are numerous third-party control vendors that can deliver almost any possible control.
4. Being familiar to developers allows ASP.NET Webforms to facilitate rapid application development.
5. Functionality is concentrated per page. It uses ViewState and server-based forms, which makes state management easier.