A single program to totally remove adware/spyware (free or not)? Unfortunately, no. There are simply too many existing variants of adware/spyware programs out there, and at this point in time, new ones appear probably more frequently than do new types of "traditional" viruses.
1. Ad Aware and SpyBot Search & Destroy, when used together, are definitely your best bet in terms of free general detection and removal utilities. However:
a) both of those programs are designed to be more curative than preventative.
b) given the rate at which malware programs morph and multiply, sometimes you will need to use utilities (also free) which are designed specifically to detect and remove a certain kind/family of infection. CWShredder, About:Buster, and HSRemove are examples of these types of utilities.
2. You can find info and dowload links for almost all of the trusted, recommended, and free "anti-spyware" utilities here:
3. Some overall suggestions, which apply to users of all versions of Windows:
1. Use Windows Automatic Update function to keep your system as up-to-date as possible with the most current Microsoft security and bug fixes.
2. Stop using Internet Explorer as your web browser. Because IE is so closely tied into the Windows operating system itself and contains so many security flaws, switching to another browser such as Netscape, Firefox, or Opera will greatly reduce the avenues through which spyware/adware/hijackers/etc. can infect your computer.
3. Install preventative utilities such as SpywareBlaster and SpywareGuard (links are in my sig below), especially if you absolutely have to continue using Internet Exploder. These utilities protect areas of your system known to be vulnerable to malicious attacks.
4. Tighten up some of Internet Explorer's existing, default settings to make it more secure. Some info on that can be found here: http://tomcoyote.org/ieoe.php
5. Obviously-install a good anti-virus program and enable its "auto-protect" and email-scanning features.
6. Install a firewall program such as Zone Alarm (from Zone Labs), or the "Internet Security" packages offered by Symantec and McAfee.
7. None of your utilities are of much good if you don't check for updates frequently; updates for anti-spyware/anti-virus programs can be released as often as ever two or three days.