nHibernate works for me, but it all depends on what you are after. A lot of people don't want to go down the full DDD and unit testing route. They just want something simple to map their database to objects to make the code a bit nicer. If thats the case then look at Subsonic as well as it is possibly easier to get started.