All defragmenters (should) use the Windows API to move file clusters. How effective they are depends on the algorithms they use to shuffle files. The typical "blindly move everything to the front of the disk and compact what you can" method doesn't work in all situations. Sometimes I think it'd be easier to copy everything to another disk, reformat, and copy it back.
This one has a nice user interface. You can select a file and it shows where the fragments are. You can select specific files to defrag. You can select a "block" (some fixed yet indeterminate number of clusters based on the size of the disk and the display area) and see what files are in the block. I ran the automated defragmenter for a few hours and it didn't make much progress. Then I tried picking and choosing files to defrag and trying to free up contiguous free space. That didn't go so well.
MyDefrag (formerly JKDefrag)
The UI on this pretty much sucks. Everything is done using predefined scripts. You select the script and which drives to run it against. The cluster display is hard to get used to - cluster 0 is at the bottom, not the top as you'd expect. That said, this is by far the most flexible defragger. Existing scripts can be modified and new scripts created using a scripting language that allows you to control how the defragging is done.
I created a ruleset that kept my already defragmented large files (typically video) in place, and packed everything else to the front.
# excluded files already defragmented and >= 250mb ExcludeFiles(FragmentCount(1,1) AND Size(250000000,0)) ... MoveDownFill()My 300GB drive had 120GB of free space in many many many small chunks, none over 100MB. There was over 50% fragmentation, hundreds of files and thousands of fragments.
After running this overnight, there's now several large chunks of free space, the biggest being 41GB. Fragmentation is down to 4%, 124 files, 391 fragments; no file has more than 4 fragments.
I didn't really try this one out. Right now its 4.4RC2 and I'm not in the mood to play tester. The drive analysis is really quick.