I don't mean to intrude on the conversation, but I felt the need to add my 0.02

I have to agree that one has to be careful with adopting Microsofts 'Best Practices' and code blocks. While I love that Microsoft is now trying to make an effort to develop these materials, it hasn't been recently (around the release of the Enterprise Library) that I felt that they were on board with what was actually happening in development shops. Now, instead of Microsoft trying to reinvent the wheel so it can have their copyright or forging their own path, they realize that they should be going out and seeing how .NET is actually being used.
We attempted to use several of the code blocks (caching, security, exception handling and logging blocks) in a fairly large project and you could tell that it seemed like an implementation that was half thought out. Their 'patterns' were more aligned with given credence to following the MSF Process Model (yet another 'steal' some true best practices and 'tweak' it to the Microsoft way) than it was to methodologies being used by the average development shop.
Anyways, I'm not knocking Microsoft, but I guess alluding to the caution that you have to exert when adopting more than just their tools.
BTW, I prefer the common theme that StrataFrame is being directed in now; such as creating wrappers to support my existing investments in components (like my Infragistics stuff that took me years to come to terms with).
Lance