Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Possible Duplicate:
Why would you use MVC over Web Forms?

What is the difference between ASP.Net MVC and Web Forms? Is either preferable? I want to use ASP.Net development as a springboard to teach myself C#. What is the best way to go about this?

share|improve this question

marked as duplicate by Ryan Hayes, Adam Lear Dec 13 '11 at 15:40

This question was marked as an exact duplicate of an existing question.

I recommend you use .NET as a springboard to teach yourself C# and avoid ASP. – Raynos Dec 13 '11 at 17:38
@Raynos: How does your comment apply to Andrew's question? He never mentioned ASP. – Jim G. Dec 13 '11 at 18:00
@JimG. when I said ASP I meant ASP.NET WebForms and ASP.NET MVC. I'm basically saying stick to .NET – Raynos Dec 13 '11 at 18:02
@Raynos: So you're saying avoid web development entirely? – Jim G. Dec 13 '11 at 18:04
@JimG. not really, you can do web development with the .NET APIs directly (like IHTTPAsyncHandler) or use framework that's closer to the metal like Nancy. Basically if you want to learn something, do it from the ground up don't start in huge abstractions. You'll waste far too much time figuring out what ASP.NET is trying to do and far too little time spend on learning C# and .NET – Raynos Dec 13 '11 at 18:07

They are two different approaches to creating a web application. Web forms mirror how desktop application are created in visual studio, each page is its own self contained unit. In MVC pages are divided up into models views and controllers, controllers handle signals/events and tell models/views what to do, models handle the data, and the view is the display. each part of the MVC architecture can communicate with the others, and they are designed to be inter changeable so controller A and controller B could both work just fine with Model A.

Right now both are well supported and in common use, MVC is newer to .Net though so webforms is still more common in the industry, but both are good ways to learn. they are completely different though and it is non trivial to switch a project between the two.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.