I've found some videos that explain C# but it back to C#.NET when it is first appeared, if I learn from these videos will I learn something that has been removed from the language? will I miss alot?

  • Care to reference what the videos are? Nov 24, 2010 at 19:02

5 Answers 5


Whatever you find, it should start at C#/.NET 2.0.

Much of .NET 1.0 was refined in 2.0 with generics, and the 2.0 framework is still widely used today; the 3.0 and 3.5 frameworks are enhancements to 2.0, not rewrites.

If you're looking for a beginner book, Head First C# is pretty good.

  • Make sure you get the second edition. I have updated the link. Nov 24, 2010 at 19:27
  • I have to add that, the 4.0 is a refined new version. You should go for 2.0, 3.5 (2.0 + features), or go to the newest. Jun 17, 2011 at 12:32
  • It can be quite easy to find anything on the net for begginers. Put that on google "learning c# asp.net", and you will find yourself amazed with so many sites. link It is as easy to find beggining to learn java. Jun 17, 2011 at 12:39

You 'can', but in my opinion, don't waste your time.

Buy a new book, or go to current websites, and get current information.


You will miss a good amount of the new features. I think you'd be better off focusing on newer training materials. This way you won't have to unlearn all of the stuff from the earlier versions as you learn stuff from the more modern versions. The .NET of 2002 is very different from the .NET of today.

  • However, I did not find a good book for bgeginners!
    – Goma
    Nov 24, 2010 at 18:36
  • @Goma If you only follow one link, I would recommend the C# Programming Guide. Take each linked page one at a time, and make sure you understand it before proceeding to the next.
    – Zev Spitz
    Mar 20, 2016 at 23:02


There's absolutely nothing stopping you from learning later revisions of the language specification, but by learning from C# 2.0 - you'll get a much better idea of what features are available in each version of the language.

It's worth stressing that the language and the .NET framework are seperate things, and both change between releases of Microsoft's .NET distribution. A great example of this is: in .NET 2.0 we only have WinForms for GUI, however in later releases there are WPF and Silverlight.

Knowing the difference between the language and framework features in different releases is important - if you're targeting the compact runtime or Novell's cross-platform Mono runtime, they only support specific features - knowing your way around is good.

If you're looking for a more 'mainstream' example - many enterprises will only have a specific .NET runtime available as part of their server SOE, so custom developed and industry-specific software usually needs to be written to support older versions of the Microsoft release!

It's still important to be up to date, but at the end of the day - the person with the better holistic understanding of the technology they're using (versus someone who only understands what is the current fashion) is going to do better in the long run.

Hope this helps :)


You will miss a ton of features. As jkohlhepp said, the .Net of today is much different than that of when it was first released. You can check out Windows Development For Beginners and Web Development For Beginners on Microsoft's site. This is targeted towards beginners (obviously) but there are links to othe resources as well.

Take advantage of Microsoft's MSDN as I think it has great documentation and has helped me along greatly! That is one of the things I love about the .Net languages and that I have found lacking in other langauges (Python has a decent documentation, but it is nowhere the caliber of the MSDN).

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