When we want to develop application which should be lightweight and easy for testing and Maintenance and more Loose Coupling that time we can develop application in MVC.
Because if we see in asp.net Webforms as we have various server control which generates large view state to maintain state which make page heavy . If person having low bandwidth cannot access this Heavy page. At this time we can use MVC where we have control over Generating HTML and using some Functionality of MVC such as bundling and minification can increase performance of application.
Development: The MVC components such as (Model, View and Controller) can be developed in isolation. Because they are not directly depended on each other
Testing: The MVC components are not directly depend on each other this make it easy to test components separately.
Maintenance: All components logic is separated it make it easy for Maintenance in future.
Control over HTML: You want full control over the HTML that is rendered in the browser and you can afford the development time and overhead to do all of your own markup.