It's pulling teeth to get 3rd party library developers to make anything up to the standard of the BCL. A lot of times it feels like someone just copied a Java library into C# and did a bunch of global text replaces until the compiler stopped complaining. The BCL is very extensive, but if it's not already in the BCL, .NET is a pain.