Enough to be safe, not so much as to be paranoid
This is a very misunderstood, and very important topic: What can you do to make a used hard drive that had confidential data on it safe enough to give away.
First off: erasing files, reformatting and repartitioning the drive will NOT get rid of your confidential data. They will make it such that the average, garden variety user won't see such data, but it won't truly be gone, and any good techie could recover it. So those steps are not enough.
Now the next questions are: Are you the type of target that would make the CIA, FBI or NSA willing to spend hundreds of thousands of dollars recovering data from you hard drive? Or, alternatively, are you just paranoid?
There is ***NO*** way short of destroying the drive (think electric drill through the platters, massive sledge hammer, or incinerator) to make your data ABSOLUTELY non-recoverable. So if you are on Osama Bin Ladden's executive staff, or if you are the head of a drug cartel, well, then get out the drill and sledgehammer.
However, if you are a "normal" person, you can make the data on the hard drive non-recoverable very easily by simply "overwriting" the data. For a "normal" person, a simple overwrite, ONCE, with ANYTHING (even all zeros) is enough. What I often do is repartition the drive into one single partition, then fill it (until I get a "disk full" error) with multiple copies of a folder of TV shows or movies. Then, once it's completely full, I just erase everything, giving an apparently blank hard drive. And if someone goes in to "recover" what was there ..... they will recover the TV shows and movies. AND THAT IS ALL THAT THEY WILL RECOVER.
Could the original (pre-overwrite) data be recovered? Yes, but the cost and effort required would be astronomical (think hundreds of thousands of dollars). NO ONE ... not even civil law enforcement ... would do it just as an exercise, or as part of a "fishing expedition", and very few people have anyone who is THAT interested in their data to undertake such an exercise.
Now a few more comments:
Overwriting can be made more secure by doing it several times with certain specific patterns of data each time. There is government specification for doing such a wipe of drives that had classified (but NOT "top secret") information on them, and most "shredder" programs can do a "DOD" (Department of Defense) wipe. Fine, and technically correct, but for a normal person it's totally irrelevant and unnecessary. ONE single actual over-write with ANYTHING (even just all zeroes) is all that a normal person needs to be far safer than is necessary.
Another comment: For about 10 years every drive made has implemented the "secure erase drive" command, but almost no one knew about the existence of this command until about two years ago. It wasn't a secret, but word of it's existence just didn't spread far. This command is basically a "destroy yourself" command issued to the drive (in this case, "destroy yourself" means destroy your data, the drive itself is NOT destroyed or physically harmed in any way). This method, which once initiated occurs entirely WITHIN the drive itself, is both more secure and faster than anything you can do from outside the drive that has approximately equivalent security. For reasons that should be clear, some computers (in their BIOS) actually block this command, and you need a program to properly issue the command. But it's really the best way to go if you have a program that can use it and a comptuer that will allow the command to be issued. The Center for Magnetic Recording Research at UCSD (Univ. of Calif. San Diego) produced and makes available a free program that does this, see http://cmrr.ucsd.edu/people/Hughes/SecureErase.shtml, however it's not very user friendly. Many other shareware "drive wiping" programs that previously did the wiping in the conventional manner from the computer now also support using the "secure erase drive" command for this purpose. Note that this command may not be available if you are using a USB or Firewire interface, or in some cases, depending on how it is implemented, even a SATA interface.
Final comment: No matter how you do it, for any kind of wiping to do anything, every single sector on the entire disk drive has to actually be written to. This is going to take time ... and on a large hard drive, where there can be a BILLION sectors or more .... it may take a LOT of time, not minutes but hours, possibly even days depending on the drive size, how you are doing the wipe and the number of passes that you want made (again, for normal people 1 is enough, but if you are paranoid or have reason to use the DOD standards, then you will be making quite a few passes).
The easiest way to deal with a drive that is not in the computer is to use one of these (not necessarily from this source, but a similar device): http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&item=250308251659. Note, however, that a USB connection probably precludes use of the "secure erase drive" command in most instances.