web forms vs MVC in .NET

As a developer, what is the difference between creating/developing ASP.NET site vs ASP.NET MVC ?

or in other words what aspects are different?
mikha eAsked:
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Nitin SontakkeDeveloperCommented:
I think pretty much everything is different. No point in replicating everything here so just posting a hyperlink:


To my knowledge some part of ASP.NET is also open source, contrary to what is mentioned in the post above.

One very important note, in case you are not aware. MVC is an application development design pattern. Microsoft has nothing do with it. ASP.NET MVC is Microsoft's implementation of that design pattern. Many languages have this implementation. Some people often land up thinking that either Microsoft invented it or is exclusive to Microsoft. Both is incorrect.
Rajar AhmedConsultantCommented:

There are several resources available online to know the differences between them.

Here are some of them mentioned based on my experience :

ASP.Net is a code behind approach where control actions are event based which is sort of window application. If you have knowledge of windows form then you will enjoy working in ASP.Net. Behind the scenes event based are controlled by viewstate mechanism.Some key terms in Asp.Net are page life cycle,database controls like grid view,pagelist,etc,View state. IMO ASP.Net is quite simple for beginners.

MVC is the structured pattern where you will not see any code behind the concept and every control action are purely based on web standard like get, post, etc. Apart from HTML helpers control you will not see any database control like gridview, pagelist here. Some key terms here are Model binding, Routing,view engine like Razor. Also MVC is built on top of ASP.NET framework.  


Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
mikha eAuthor Commented:
@Nitin and @Rajar - thanks

what about postback, I read ASP.NET has postback and ASP.NET MVC does not?
Rajar AhmedConsultantCommented:

As i mentioned earlier about the event based programming in asp.net whenever you trigger the server control event the enitre form would be posted to the server.By using ispostback boolean you will determine whether its postback request or not.

As MVC is not event based application it does not require postback feature.Here major advantage, the website will post only the required values and not necessarily post the entire web page.

As i said asp.net webforms made our life so easy that we would  believe that controls values can be retrieved in the server side code like textbox1.text,label1.text,etc but the fact is that is not at all possible in pure web standards as like MVC.

It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today

From novice to tech pro — start learning today.