What is the concensus on when to use one of these tools adversed to the other? I find Subsonic very useful in terms of getting things done quickly, but on large projects it
I'd recommend SubSonic if your project works with the ActiveRecord view that the database is your model. You'll get one class per table and everything just magically works. You can of course tweak and override things, but if you (or your project) fundamentally disagree with the class-per-table approach, I'd look at NHibernate since it starts with the more complex (but more flexible) approach of mapping your domain model to your database.
If you're using a relatively simple database that's under your control (as in, you can change columns without sending eight forms to a database division oversight review board), I'd recommend starting with SubSonic and moving to NHibernate if SubSonic doesn't meet your needs.