ASP.Net Model-View-Controller (MVC) is design pattern and an alternative option to ASP.Net Web forms. It has made web application easier by separating presentation and logic. Best thing here is, we do not have to deal with pages, controls, post backs, view state, confusing event lifecycle. Just define the controllers, actions and views. Developing ASP.NET MVC application requires Microsoft .NET Framework 3.5 or higher. We can combine both old and new model in a single web application.
Model: Represents a set of classes that describes the business logic or data access layer to transact with database or objects.
View: Presents the data into UI (http response stream), or just say an ASPX page minus code behind file.
Controller: Process user input, interact with model and creates view. The Controller acts as the coordinator between the View and the Model. The Controller receives input from users via the View, then process the user’s data with the help of Model and passing the results back to the View.