views:

1784

answers:

7

I was just reading through the Hidden Features of C# thread, and there were a lot of really neat tricks that I had never even heard of. But there wasn't really a whole lot of depth to them all. It got me to wondering what kind of books and tutorials are out there that teach more advanced topics (Delegates, Lambdas, Threading, etc) and advanced tricks.

What books and tutorials have you all read that have helped you learn some more advanced tricks and features?

+18  A: 

I highly, highly recommend CLR via C# by Jeffrey Richter. It will help you understand that writing C# is really only an efficient way of writing IL. Making that understanding crystal clear for me gave me a whole new appreciation for why C# is the way it is, and exposed some nifty advanced patterns.

Two thumbs up for this book. If I had a third thumb it'd be up too.

Stewart Johnson
I know this is really old, but I just finished this book, and it's simply amazing.
Joel
++ for the third thumb joke
zaharpopov
+2  A: 

The best resource for me, apart from CLR via C# mentioned by Stewart Johnson, is the MSDN docs. Seriously, they're awesome. That, and the ECMA specification.

TraumaPony
+1  A: 

I strongly recommend Bart De Smet's blog here: http://community.bartdesmet.net/blogs/bart/default.aspx

He's got some great stuff on advanced C# 3.0, Lambda and dynamic C#.

Slace
+3  A: 

I can highly recommend the following books:

C# in a Nutshell, by Joe and Ben Albahari

C# in Depth, by Jon Skeet

Mitch Wheat
The two links are the same, by the way. :)
Joel
Link to my book then:http://csharpindepth.comorhttp://manning.com/skeet
Jon Skeet
Apologies, cut and paste malfunction!
Mitch Wheat
A: 

MSDN documentation and samples are some of the best bits and pieces. There are a few really good, "Whats new" type articles out there as well.

It just takes a good bit of digging to find them!

Mitchel Sellers
+1  A: 

I really enjoy Patrick Smacchia's Practical .NET 2 and C#2 before .NET 3.5's arrival. Hope Patrick can spare some time to update it to .NET 3.5.

Lex Li
+1  A: 

Bill Wagner's _**Effective C#**_ has been very helpful to me. It contains 50 specific strategies / policies on how to, quite simply, write better C# code.
Each tip is explained in depth, with good code examples (but not too many), and an explanation of why it is important. This book is not for the novice, but for someone wanting to pick their C# up a notch. Example tips include:

  • Prefer readonly to const
  • Minimize Boxing / Unboxing
  • Don't overuse reflection
  • Use using and try/finally for resource cleanup
AJ