First, Here are a few sites I’ve found specifically for C#:
On Microsoft’s MSDN site, you’ll find this great collection of C# tutorials. Most of the basics are covered here and this will get you started quite nicely in your journey to learn the C# language. A similar set of tutorials can be found here, on the C# Station website. The one resource I can’t recommend highly enough is this nice collection of videos on Microsoft’s Channel9 site by Bob Tabor of LearnVisualStudio.net – I found Bob’s teaching style excellent, and the videos moved along at the perfect pace for me. Just a note – I found streaming these videos to be quite slow for me, even with my fast connection, so I downloaded the .wmv versions, which is nice to have, as I can save them locally for future reference.
Once you get the language basics down, it’s time to move onto applying those skills to a framework. An excellent place to start for ASP.NET is right on the ASP.NET homepage. From there you can find excellent tutorials such as the Movie Database Application Tutorial, and then the more advanced MVC Music Store Tutorial. I found both of these excellent and they taught me a lot about the ASP.NET MVC framework. There is also the NerdDinner tutorial which at the time of this writing is still on MVC 2, but there is supposed to be an updated tutorial coming soon to port it to MVC 3. Be sure to check out the other MVC tutorials as well as the free videos from Pluralsight on the ASP.NET MVC homepage. Also, don’t forget to further explore the MSDN site because there is a lot of information available to cover a wide range of topics from general .NET Development, C#, “How Do I?” videos and Test Driven Development.
Although the purpose of this post was to share free resources, I have also purchased the following books I have found helpful: