Here are the main benefits/drawbacks of software vs hardware raid as I see them (at least on Linux which is what I assume you're using):
Pros of Software RAID
1. Very flexible - You can RAID partitions, entire disks, almost anything. It's common to setup RAID arrays over RAID arrays. In fact, this is how you setup a RAID10 array.
2. Great performance - Uses the main CPU for processing RAID calculations which ends up working much faster than the majority of RAID cards out there, especially in RAID5. In RAID0 or 1, the performance difference typically isn't noticable since RAID0/1 doesn't need much CPU power.
Cons of Software RAID
1. More difficult to configure - The flexibility gives so many different choices on how to raid makes it tougher to configure, not to mention that there isn't any handy utility to configure RAID arrays for you, you need to edit /etc/raidtab.conf.
2. Can't boot off a RAID5 array. Not a problem with hardware RAID. You can boot off RAID1 arrays, though.
3. Recovering from a disk failure is a bit trickier - Especially if the disk you're booting off is where LILO/GRUB is loaded from. Not as big of a deal if it's on a non-boot critical array.
Basically, I recommend hardware RAID whenever you need/want to boot off of the RAID array.
I'm not sure what you mean by "put the drives on a host adapter to have them work", can you be more specific?