Difference between Asp.Net MVC and
Web Forms
Asp.Net Web Forms
Asp.Net MVC
Asp.Net Web Form follow a
traditional event driven development model.
Asp.Net MVC is a lightweight and
follow MVC (Model, View, Controller) pattern based development model.
Asp.Net Web Form has server
controls.
Asp.Net MVC has html helpers.
Asp.Net Web Form supports view state
for state management at client side.
Asp.Net MVC does not support view
state.
Asp.Net Web Form has file-based URLs
means file name exist in the URLs must have its physically existence.
Asp.Net MVC has route-based URLs
means URLs are divided into controllers and actions and moreover it is based on
controller not on physical file.
Asp.Net Web Form follows Web Forms
Syntax
Asp.Net MVC follow customizable
syntax (Razor as default)
In Asp.Net Web Form, Web Forms(ASPX)
i.e. views are tightly coupled to Code behind(ASPX.CS) i.e. logic.
In Asp.Net MVC, Views and logic are
kept separately.
Asp.Net Web Form has Master Pages
for consistent look and feels.
Asp.Net MVC has Layouts for
consistent look and feels.
Asp.Net Web Form has User Controls
for code re-usability.
Asp.Net MVC has Partial Views for
code re-usability.
Asp.Net Web Form has built-in data
controls and best for rapid development with powerful data access.
Asp.Net MVC is lightweight, provide
full control over markup and support many features that allow fast & agile
development. Hence it is best for developing interactive web application with
latest web standards.
Asp.Net Web Form is not Open Source.
Asp.Net Web MVC is an Open Source.