If you’re like me, you like to have control over how your websites look and the HTML returned to the browser. ASP.NET MVC gives you that control by letting you keep your HTML separate from the core application code. If you learn to use tools like CSS and JavaScript, you can use them in the exact same way you would if you were working with a static web page. There are no generated IDs or missing/custom HTML attributes. While it does give you some helpers to generate HTML, you do not have to use them if you don’t want to.

ASP.NET MVC is very extensible and flexible. Nearly any component of the framework can be swapped out for your own version, if you so choose to delve into the inner workings.

ASP.NET MVC was built with Unit Testing in mind. If you’re not using Unit Testing, you should definitely start researching how it can improve your code reliability.

So, why should you use ASP.NET MVC?

  • Based on the MVC pattern.
  • Allows you to use Standards such as XHTML and CSS.
  • Separation of concerns allows for more maintainable code.
  • Gives you help when you need it and gets out of your way when you want control.
  • Unit Testing is built in and easy to do.
  • Fully supported by Microsoft.
  • You can download the code for the ASP.NET MVC Framework and see how it works.

If you know HTML, CSS, or JavaScript and you are familiar with ASP, then you should definitely look into ASP.NET MVC.