I have begun working on the "Vanilla DAL" prototype. After a grinding start (mainly because it took me a while to find some motivation when staring at an empty Visual Studio solution), things are running quite smoothly now.
I struggled with the decision, but finally chose Visual Studio 2005 instead of 2003. All my projects at work are still developed under 2003, and this might be my only opportunity for quite a while to play around with some 2005 features. On the other hand Vanilla DAL is just component library so all those new RAD tools won't be that useful - anyway, the new intellisense- and refactoring-functions have saved me quite some time already.
My plan is to make Vanilla DAL available on .NET 1.1 as well, so I am either going to downgrade the whole codebase one day, or there might be special 2003-version with a couple of minor API changes. Internal typed collections are implemented using generics, so that's an implementation detail which won't work under 1.1. The exported API functions use custom implementations of typed collections - I consider that more convenient for the end-user who might not be too familiar with generics.
I hope to execute the first database-roundtrip by tomorrow, so we should soon be able to see a preview on how coding against Vanilla DAL might look like.