I learnt C# 1.0 back in the early part of this millenium, then changed jobs and concentrated on C++ and ANSI C (yes, I even bought a copy of Kernighan & Ritchie). When I switched back to C# a couple of years ago, I basically had to re-teach myself all that I knew, and since C# 2.0 was in vogue then, that’s what I learnt.
Now, while I pride myself on being an early adopter in most areas, I have managed to successfully ignore C# 3.0 until now. Honestly, who really needs LINQ anyway?
I found some very informative talks from TechEd on MSDN’s Spotlight site recently which do a great job of highlighting the changes in C# 3.0 and introduce LINQ and Lamda Expressions in a really easy-to-digest format. So easy that even I was forced to think, “Crap! Why didn’t I get into this stuff sooner?”
Anyway, here are the links:
C# 3.0: Future Directions in Language Innovation
Microsoft Visual C# Under the Covers: An In-Depth Look at C# 3.0