MVC 3 picks up some new, very useful validation features available due to .NET 4 support. For example:

C# 8.0 and .NET Core 3.0 – Modern Cross-Platform Development: Build applications with C#, .NET Core, Entity Framework Core, ASP.NET Core, and ML.NET using Visual Studio Code, 4th Edition
ASP.NET Core 3 and Angular 9: Full stack web development with .NET Core 3.1 and Angular 9, 3rd Edition
C# in Depth, 4th Edition

–  MVC 2’s DisplayName attribute wasn’t localizable, whereas the .NET 4 standard System.ComponentModel.DataAnnotations Display attribute is.

–  ValidationAttribute was enhanced in .NET 4 to better work with the validation context for the entire model, greatly simplifying cases like validators that compare or otherwise reference two model properties.