I would first read something general regarding the .NET architecture: Common Language Runtime, Managed Code, the Namespaces are the most important concepts. You have to be aware that in .NET there is a level of code running your code, and interfacing with the COM and Unmanaged world will take it's own effort.
I learned and worked in
VB.NET before looking into ASP.NET and what I see in ASP.NET is a lot of similarities at the language level.
But as with any new language/programing paradigm; what works for me is getting my hands dirty with a real example or problem to solve.
Let us know how it goes! (Tell us what to be aware when using VS 2005).
Cheers, Joel