Also you might check into smart defrag. Beautiful thing is that you can let it run in the system tray, when you've been idle for like 5-10 minutes, it is supposed to start defragging in the background. I think you can schedule it as well, and it's free.
If you want something you don't have to install, check out Auslogics disk defrag portable. It can be run off a usb stick, and it's fast too. Built in defrag for Vista and 7, kinda blah to me. Seems overly slow too.
I use O&O Defrag version 12.5 and I love it. I've tried them all, every year for the past 3-4 years and for the past two years O&O Defrag (version 11-12) have been my favorite. When it comes down to spending money on a Disk Defragmenter, O&O is the only one I'm willing to pay for anymore.
NO it's NOT an Affiliate link and I don't get anything for posting this. I wanted to give an experienced user's review to save others time when they're trying to decide which Disk Defragmenter to use. O&O Defrag all the way! At least for now :-)