LLBLGenPro - been using it for a few months now, and it is brilliant, I am an extremely happy customer.
It is not only an awesome code generator, but the out of the box architecture (actually, two architectures, each available in c# or vb) that comes with it is incredibly powerful; I suspect it will do anything you want it to do out of the box (it is many years under development, and someone else will likely have already requested the feature be added in the past)....and you can always fall back on writing your own stored procs whenever you want, and it exposes them in a consistent manner for you.
Point it at your database, generate your code, and you are cranking out services and screens in literally minutes.
Some slides you can look at here for a quick overview:
http://www.llblgen.com/pages/convince.aspx
Oh yeah, support is excellent as well. And documentation out the yin yang.
Its not free, or open source (actually, it is mostly open source, in that you have full access to the underlying source code in the runtime libraries.....so if you are wondering why something is behaving the way it is, you are fully able to get down into the code and see how its implemented, and if you find a legitimate issue (rarely, Frans will include the fix in the next build). I think it is about $250 or so, but worth every dollar.
In the past I have looked into many other products (after of course making a half assed attempt at writing my own), and while some are "good", I found most were hard to figure out (or even install) or tedious to configure. I've found this tool just worked right from the start, and when you start to want to do more complicated things, you can get into that gradually, rather than having to do tons of reading before you can do anything at all. Most of what you want to do will be ready 30 minutes after you start.
And the developer, Frans Bouma is a smart dude. Read his multi-post blog series on implementing LINQ within LLBLGen here:
http://weblogs.asp.net/fbouma/archive/2007/09/11/developing-linq-to-llblgen-pro-day-0.aspx
Or, try totally understanding this article. (If you can, you're also a very smart person):
http://weblogs.asp.net/fbouma/archive/2008/06/17/linq-to-llblgen-pro-feature-highlights-part-1.aspx