One of the things I've found very curious about the .NET Framework 3.0 libraries is that it has multiple definitions of what I presume are esentially the same classes. Have you noticed that there are two DependencyProperty classes, two DependencyObject classes, two PropertyMetadata classes and so forth? One for Windows Presentation Foundation and one for Windows Workflow Foundation.
I'm curious to know if there really is any significant difference between the two of them, and if not, why do we still have both? Mind you, we'll live with this forever, and at the very least it makes searching for documentation on them far more inconvenient (you end up looking at the wrong one at the most unexpected times!).