I like some of the new C# 3.0 features. Extension methods are fun to play around with. Isn't this ridiculous:
No performance drawbacks, and so much fun!
On a more useful note, I've written some extension methods that have been serving me well. (We've just upgraded to Orcas at work.)
I wish you could overload operators - I wanted to see "ab" * 3 ("ababab") and do something insane like "text"++ becoming "TEXT".
C#3 also has introduced object initializers, which are nice. Still no dictionary initializers, though - I'm disappointed. Here's a workaround - I wish I could have used generics.