I’ve discovered that the only way to really get a good defrag in Windows is in safe mode. Reboot Windows, hit F8 before the starting Windows screen comes up, select safe mode, and then Start -> Accessories -> System Tools -> Disk Defragmenter.
For a long time I would just shut down all apps and start defrags when I was leaving work say once every few months or so. The results always showed a lot of fragmentation on the drive even after the defrag. Apparently the running services keep a lot of files open preventing proper defragmentation. Then recently I decided to reboot into safe mode before running the defrag to see if that helped and what a huge difference it made!