I still use UFS (and gmirror) for smaller systems but here are some of the reasons I'm a big ZFS fan:
1) For a start, now I've been using ZFS for a while, I wouldn't want a file system of 2+TB on anything else. I have a 4TB VM host running on EXT3 for historic reasons and if we fsck the virtual machines, they usually find errors. I know this is because data has been corrupted at some point and it's just that nothing has noticed. With ZFS, it'll fix any silent errors (or just fail the device). It's a nice feeling to know that if the pool is online, every single bit is correct. Corruption does happen on large file systems, and you generally won't know about it until it causes you real problems.
2) Simplicity. I never really got the hang of mbr/fdisk/bsdlabel/dump/restore. Even doing a dump and then an immediate test restore would give me warnings and leave me with a non-working system. GPT has made handling disks/partitions a lot easier and with ZFS, I can fully restore a backup with one simple zfs send/recv command.
3) Snapshots/Backup. Snapshots by themselves are nice but not life changing, however, the ability to snapshot and send incremental streams of those to a backup server is. With simple commands I can backup a server which would take 8 hours with rsync in minutes. Not only that, I automatically get versioned backups on the backup server so I can restore the latest copy of a file, or one from 2 weeks ago. As it's a direct copy of the entire file system, it makes backing up a full machine easy.
4) Flexibility - Being able to create new file systems for different purposes on the fly and not have to allocate disk space. I can create file systems for different purposes when needed then choose different backup/snapshot schedules, compression settings, quota etc.
If you do go with ZFS I would suggest following the 'ZFS madness' guide in the Howto section for setup instructions (If you're using root-on-ZFS). With ZFS it's just messy to have the root file system in the root of the pool and the pool/ROOT/some_label layout ties in with the beadm command. Depending on the number of disks you may prefer a separate mirror (ZFS or gmirror) for the root fs.
Also the LSI cards seem to be the best cards at the moment as most have an LSI & built-in driver available (I'm not sure which is the best atm) and can be flashed with IT firmware which removes RAID functions, making them a simple HBA. You can also just use a mainboard that has enough on-board SATA ports (ideally with AHCI support which will allow hot-swap).