---
title: "What is the difference between each version of MVC 2, 3, 4, 5 and 6?"  
description: "What is the difference between each version of MVC 2, 3, 4, 5 and 6?"  
author: "Anupam Mishra"  
published: 2016-02-03  
updated: 2020-09-23  
canonical: https://www.mindstick.com/interview/22977/what-is-the-difference-between-each-version-of-mvc-2-3-4-5-and-6  
category: "asp.net"  
tags: ["c#", "asp.net", "asp.net mvc"]  
reading_time: 4 minutes  

---

# What is the difference between each version of MVC 2, 3, 4, 5 and 6?

## MVC 2

· ModelMetadata and ModelMetadataProvider Classes

· Model Validator Providers

· Client-Side Validation

· Client-Side Validation

· New RequireHttpsAttribute Action Filter

· Overriding the HTTP Method Verb

· Single-Project Areas

· New HiddenInputAttribute for Templated Helpers

**MVC 3**

· New Intranet Project Template

· Extensible Scaffolding with MvcScaffold integration

· HTML 5 Project Templates

· Extensible "New Project" Dialog Box

· Razor View Engine

· Support for Multiple View Engines

· Partial-Page Output Caching

· Granular Control over Request Validation

· New Overloads for "Html.LabelFor" and "Html.LabelForModel"

· Client-Side Validation Enabled by Default

· Global Action Filters

· New "ViewBag" Property

· Remote Validator

· JSON Binding Support

· Sessionless Controller Support

· JavaScript and Ajax Improvements

· New "AdditionalMetadataAttribute" Class

· "DataAnnotations" Metadata Attributes

· "ValidationAttribute" Class

· Validation Interfaces

## MVC 4

· Add Controller to other project folder

· Task Support for Asynchronous Controllers

· Bundling and Minification

· Enabling Logins from Facebook and Other Sites Using OAuth and OpenID

· App_Start folder and separate classes

· Display Modes

· Azure SDK

· Database Migrations

· ASP.NET Web API

· Mobile Project Template

· Empty Project Template

· Enhancements to Default Project Templates

MVC 5

· One ASP.NET

· Attribute based routing

· Asp.Net Identity

· Bootstrap in the MVC template

· Authentication Filters

· Filter overrides

**MVC 6**

· ASP.NET MVC and Web API has been merged in to one.

· Dependency injection is inbuilt and part of MVC.

· Side by side - deploy the runtime and framework with your application

· Everything packaged with NuGet, Including the .NET runtime itself.

· New JSON based project structure.

· No need to recompile for every change. Just hit save and refresh the browser.

· Compilation done with the new Roslyn real-time compiler.

· vNext is Open Source via the .NET Foundation and is taking public contributions.

· vNext (and Rosyln) also runs on Mono, on both Mac and Linux today.

\

## Answers

### Answer by Anupam Mishra

## MVC 2

· ModelMetadata and ModelMetadataProvider Classes

· Model Validator Providers

· Client-Side Validation

· Client-Side Validation

· New RequireHttpsAttribute Action Filter

· Overriding the HTTP Method Verb

· Single-Project Areas

· New HiddenInputAttribute for Templated Helpers

**MVC 3**

· New Intranet Project Template

· Extensible Scaffolding with MvcScaffold integration

· HTML 5 Project Templates

· Extensible "New Project" Dialog Box

· Razor View Engine

· Support for Multiple View Engines

· Partial-Page Output Caching

· Granular Control over Request Validation

· New Overloads for "Html.LabelFor" and "Html.LabelForModel"

· Client-Side Validation Enabled by Default

· Global Action Filters

· New "ViewBag" Property

· Remote Validator

· JSON Binding Support

· Sessionless Controller Support

· JavaScript and Ajax Improvements

· New "AdditionalMetadataAttribute" Class

· "DataAnnotations" Metadata Attributes

· "ValidationAttribute" Class

· Validation Interfaces

## MVC 4

· Add Controller to other project folder

· Task Support for Asynchronous Controllers

· Bundling and Minification

· Enabling Logins from Facebook and Other Sites Using OAuth and OpenID

· App_Start folder and separate classes

· Display Modes

· Azure SDK

· Database Migrations

· ASP.NET Web API

· Mobile Project Template

· Empty Project Template

· Enhancements to Default Project Templates

MVC 5

· One ASP.NET

· Attribute based routing

· Asp.Net Identity

· Bootstrap in the MVC template

· Authentication Filters

· Filter overrides

**MVC 6**

· ASP.NET MVC and Web API has been merged in to one.

· Dependency injection is inbuilt and part of MVC.

· Side by side - deploy the runtime and framework with your application

· Everything packaged with NuGet, Including the .NET runtime itself.

· New JSON based project structure.

· No need to recompile for every change. Just hit save and refresh the browser.

· Compilation done with the new Roslyn real-time compiler.

· vNext is Open Source via the .NET Foundation and is taking public contributions.

· vNext (and Rosyln) also runs on Mono, on both Mac and Linux today.

\


---

Original Source: https://www.mindstick.com/interview/22977/what-is-the-difference-between-each-version-of-mvc-2-3-4-5-and-6

Copyright © MindStick Software Pvt. Ltd. This Markdown version is provided for developers, AI systems, and offline reading.
