The MVC Pattern Invented by a Smalltalk programmer in 1979 Not a framework. It is an architectural pattern. Not exclusive to ASP.NET. Martin Fowler, Patterns of Enterprise Application Architecture (2003), 331. As I think about MVC I see two principal separations: separating the presentation from the model and separating the controller from the view. Of these the separation of presentation from model is one of the most fundamental heuristics of good software design...
Primary goals of ASP.NET MVC Higher degree of testability than WebForms Make it easier for developers to control their HTML Separation of concerns A return to the metaphor of the web. - Like event handlers. Theyre really frontends for a get/post activity. MVC goes back to how the web works (get/post) Extensibility - Can change the way that the view itself works. MVC makes it easy
Disadvantages of MVC No Viewstate Have to know HTML and the web achitecture No designer Lots of magic strings More work to do certain things
Conclusion ASP.NET MVC is a way to create dynamic web pages It is an alternative to ASP.NET Webforms MVC is harder to learn and harder to use than WebForms But MVC creates a more robust, scalable, maintainable and testable site The idea of MVC is all about separation of concerns