I'm not a big fan of defragmenting a hard drive. Back in the days of DOS, it was often a useful task to help improve performance, but now it isn't all that important to the average user.
Why do files get fragmented? Because of how files are saved. If you have an empty hard disk, your file gets saved in one section of it. The next file gets saved in the section next to it.
Now, suppose you want to add to the first file. You can't save the data in the next section -- the new file is using it. So you save it in a section separate from the rest.
Generally this was not a problem, even in the DOS days. But if a file was spread out in too many sections of the hard disk -- fairly common as files got bigger -- the computer could slow down as it picked up pieces of the file from all over instead of one location.
Defragmentation moves sections of files so that they are all together. In the DOS days, you could see better performance. Nowadays, it doesn't matter as much: hard drives are faster.
Windows has always had a defragmentation tool, but it was difficult to use. You needed to shut down all programs (including your screen saver), since if a program accessed any part of the hard drive during the scan, it started all over from the beginning. Since it could take an hour to defragment, it was frustrating if that happened 45 minutes into the process.
And, this meant you couldn't use your computer. Defraging was an overnight process.
That's why I was impressed by Defraggler. It's defragmentation done right. It's not bothered if the computer accesses the hard drive during use; it merely ignores files that aren't free. It also gives you the option of defragmenting individual files or directories.
It was developed by the same people who created CCleaner, so it runs simply and easily.
This is finally a way to balance the difficulty of defragmentation with the need.