ASP.NET MVC is an open-source web application framework which allows developers to build a web application by separating concerns into three roles: Model, View and Controller.