I've found that the command line version of HandBrake works much faster than the GUI, but it's probably because I haven't figured out how to match the GUI parameters with the ones I use on the command line. I'm a command line kind of guy anyway, so I haven't looked into it. For the record, here's the options I use:
HandBrakeCLI -i infile -o outfile.m4v -O -r 29.97 -S size
where "size" is the size of the original file in megabytes, (i.e., if the the original file is 348,134,654 bytes then "size" gets replaced with 348).
-JT