The BCL (still) not including a Set<T> class is among my highest pet peeves - it's a constant top 10 on product feedback. That Java's had it since Dec 1998 when Playground shipped with the Collections framework just makes things worse, arguably.
One of the other classes I miss (like Set, easy to make by hand, just annoying that it's not in the BCL) is LinkedHashMap which let you iterate over the keys in a hash in insertion order. To a much lesser extent, I kind of miss BitSet and WeakHashMap but those aren't as big of a deal to me. There are places where LinkedHashMap would be nice because you can't (for instance) serialize a hash because you're not sure what the right ordering is for the key/value pairs. Having a LinkedHashMap would fix this, since there's now an ordering associated with the hash.
Which classes/features do you miss? They don't have to be collections necessarily (and make to check out Power Collections if you want some very powerful collections in your .NET 2.0 development), but anything that you feel really should be in the BCL. If you get a chance, after you add a comment here, go ahead and make sure your entry is represented (add it if not) and voted for @ the product feedback center! :)
To be fair, there are things I really love about the BCL (and to an extent, the CLR's implementation and the C# compiler). A few:
And other 2.0 features in general: