You'll pick plenty of some bad habits if you learn asp.net by itself. Some devs have trouble unlearning those when moving to asp.net MVC.
imho learning it in the context of asp.net MVC should reduce those. Can't really tell for sure, since I worked with asp.net since 1.0, so I knew it pretty well before moving to asp.net MVC.
@eglasius: well i dont agree on the long run. if you want to be a decent developer you need to know the underling technologies. and asp.net is not rocket science ;-) – Yves M
I think that's actually an argument for not learning asp.net by itself. I've seen devs learn asp.net and not knowing much of the underlying technologies, and imho asp.net MVC makes a much better job at encouraging you to know about http, html, css, ajax, etc.
Dig into the pieces of asp.net that you work with in asp.net / Session, Cache, anything that you end up using. Not much point in learning about aspx syntax and controls, if you will go with a different View Engine. Also there are some parts of the control lifecycle that's just noise when you are just working with aspx/ascx in asp.net MVC.
Gathering prior knowledge for LINQ, WCF and ADO.NET data services, JSON, Entity Framework, etc. (part of .NET 3.5/4.0 framework) can help you tremendously when you advance towards the ASP.NET MVC development path. At least that is my opinion. – Dick Lampard
Definitely. You are more likely to learn JSON by going into asp.net MVC than by going web forms. When learning asp.net you risk further obscuring data access in the learning experience by using the Data Source controls (we didn't had those in asp.net 1.0 :)). As for the rest, those are more neutral pieces of the framework, you could be developing desktop applications and be learning those. I agree with the thinking that knowing those are skills that transfer very well, but you don't need to go to asp.net to learn those / doing so in the context of asp.net MVC is perfectly ok.