How about generics covariance/contravariance support in C# 3.0?
Spent a bit of time with Linq the last few days and one of things that has struck me is that Linq outputs a Linq query results to a generic IEnumerable type. If your application always has a understanding of the type that the generic type forms from this then your made up. However the trouble with generics in C# in general at the moment is that you can't cast a type down to it's base type. If you want a generic piece of code that needs to handle base types only (in Linq's case this could be the Table type that types inherit from in the generic IEnumerable type). This is where contravariance seems to help, Jeron has a great post on the fact that contravariance is supported by the CLR but it's not in C# yet. How about it Microsoft?
Update: I have adjusted the title of this post slightly, in the comments Frans as always makes a great point about the difference and includes a link. In my reply I have qouted directly for you to see the difference. Lets have both in C#.