The program of choice is Carbon Copy Cloner. It's donation ware, so give the guy a few bucks. There is also Superduper commercial ware, Leopard ready yet anyone?
My method of cloning is like this.
New drive:
1: Launch Apple's Disk Utility and Erase with Zero option the new drive. Only have to do it once for a drive. It does take some time though but worth it. It checks the drive for bad sectors by writing 0's to every bit on the drive. If it finds a bad bit in a sector it will map off that sector from never being written to again. This insures a quality writes and reliable data from bit corruption. Use a Firewire 800 connection for the fastest speed, or next Firewire 400, or last USB. Hook up a laptop to power supply.
2: While in Disk Utility, check the drive your cloning (if you get errors you'll have to c boot from a OS install disk and run Disk Utility on the boot drive that way to repair it) Repair Permissions in Disk Utility.
3: Quit all other programs and users, log into a admin account, turn off sleep/screen saver and run Carbon Copy Cloner. It's pretty easy from there. Clone the whole drive from point A to point B, disappear for a few minutes/hours or so depending on the size and data on your drive.
4: When it's done. Hold "c" and boot while the clone is hooked up and click the cloned drive when the option appears on the screen. Repair permissions in Disk Utility (you'll see some corrections) and your all set.
5: Boot the original and repair permissions on that drive as well. (you don't need to hold the "c" to boot the original)
Cloning beats the pants off of TimeMachine, as that drive is not bootable. Hardware failure occurs quite a bit, especially with the lesser quality Seagate drives Apple uses. Cloning copies everything, including copy protection schemes for software. (but may only work on one computer) I always keep a couple of staggered clones, Panther, Tiger etc so I can evaluate OS performance speeds.