It's a real pain. For this task, I recommend CCleaner, which 'knows' all the main locations, and has an overwrite option. It is not as thorough (or as well-documented) in its erasing as Eraser, but for the vast majority of ordinary users, the ease of use more than makes up for this difference. CCleaner also has a free space cleaning function if you want to be doubly sure.
Eraser comes into its own when you want to erase specific files, or for more in-depth free space erasing. I regard the two programs as complementary, and use them both.
Most file names in the standard and cache locations (e.g. the Firefox cache) are either pre-set or random and so are unlikely to be sensitive. The CCleaner erase free space function has an option to clear unused MFT entries (the Eraser free space erase does this as a matter of course).