Aus meiner Sicht ist MVC 2 in wichtiger Schritt in die richtige Richtung, zumal diese Version - bis dato vermisste - Features beinhalten wird, welche bereits von anderen freien MVC-Lösungen bekannt sind -- allen voran Möglichkeiten zur deklarativen Validierung.
Negativ fällt auf, dass Validierungsregeln direkt in den Model-Klassen festgelegt werden, da es durchaus vorkommt, dass die selbe Entität in unterschiedlichen Masken unterschiedlich zu validieren ist. Natürlich könnte man sich mehrerer ViewModels mit eigenen Validierungsangaben bedienen, allerdings bringt dies zusätzlichen Aufwand und weiteren Quellcode mit sich. Wünschenswert wäre hier eine Lösung á la Struts 2, welche es erlaubt, für Modelle abhängig von der View Validierungsregeln festzulegen. Konnten auf View-Ebene keine Validierungsregeln gefunden werden, wird nach einer allgemeinen Regelset für die View Ausschau gehalten.
Darüber hinaus wäre auch noch die Verfügbarkeit von serverseitigen Tags zum Abbilden von Iterationen und Bedingungen wünschenswert, welche lediglich einen dünnen Wrapper für die Html Helper-Methoden darstellen. Dies würde die Übersichtlichkeit gegenüber der Verwendung von VB- und vorallem C#-Code in den Views erheblich verbessern. Obwohl man soetwas auch selbst basteln oder sogar eine eigene View-Engine einbinden könnte, scheint es doch sinnvoll zu sein, solche Basis-Features im Standard wiederzufinden.
ASP.NET MVC ist ein tolles Framework, welches im Lieferumfang von .Net längst überfällig war und mit Version 2 langsam konkurrenzfähig wird. Trotzdem lässt sich die eine oder andere Idee von der Konkurrenz noch "ausborgen".