Not really, not completely, and not securely.
I’ll describe a few steps that will delete a lot – perhaps enough for your concerns – but it really depends on how paranoid you are about the various traces that will still be left on a machine you’ve been using a while.
Everything? There’s really only one way to do that.
Become a Patron of Ask Leo! and go ad-free!
Delete and uninstall as much as you can
The process starts by deleting your data files and uninstalling all the programs you’ve used or added and don’t want to be part of the machine when it’s reused by someone else.
For your data files, that means deleting things from My Documents and wherever else you keep data files.
A good start for programs is to take a walk through Add/Remove Programs, or Programs and Features in Control Panel, and just start uninstalling.
For extra security, you might want to use Revo Uninstaller instead of Control Panel. Revo not only lists more things, but it uninstalls more thoroughly. (It has a couple of levels of “aggressiveness” in determining what to remove, and this is one case where it might make sense to risk being as thorough as possible.)
Remove all users but one
If your machine has more than one user account, remove all except for a single account that has administrator privileges. This should delete a plethora of files and settings associated with each account.
Run the built-in Disk Cleanup Utility, or, better yet, grab a copy of CCleaner (a free download – you do not need to buy support), and use it to clean up as much as it can.
The goal here is to remove traces from browser caches, temporary files, and a host of other things – many of which might well be benign, but many others that may inadvertently contain things you’d rather not share with your machine’s subsequent owner.
You might consider running a registry scan. I’m not a big fan of registry cleaners, but this is a case where they might remove additional information you don’t want left behind, and the cost of failure (an unbootable machine) is relatively low. CCleaner’s registry-cleaning utility should be fine. You may want to take an image backup prior to the cleaning, just in case you want to be able to recover from that worst-case scenario.
Turn off some system files
Set your virtual memory to zero and delete the paging files. Turn off Hibernation, and remove the hibernation file.
Turn off System Restore.
All of these can contain private information, and can be turned back on by the machine’s new owner should they so desire.
Securely erase the empty space
Using a tool like CCleaner’s “Drive Wiper”, securely erase unused space on your hard disk.
By default, just deleting files doesn’t overwrite the data, and it could still be recovered. Tools like Drive Wiper actually overwrite all of the unused space on your hard drive with random data to completely remove all traces of what had been stored there before.
That’s about as good as you can get using this approach.
What still might be missed
The problem with this approach is that you don’t know what you might have missed.
There might be system files that contain information about you: registry settings that remain even after all the deletion and cleaning above that contain settings for programs (perhaps even programs no longer installed) that indicate something about who you are or what you used the machine for.
You just don’t know.
That’s why this is not an approach I ever recommend.
Nuke it instead
… including all your personal information.
Then, if you like (and if you can), reinstall the operating system from an install disk.
If you don’t have one, then perhaps grab a free copy of a Linux distribution and install that instead.
But erasing the hard disk completely is the only way to be absolutely sure you haven’t left personal information on the machine prior to handing it off to someone else.
Well, that or remove the drive and give them the machine without it. But even then, you’ll want to erase the drive before disposing of it.