i think you'll find alot of spyware can mutate in the same way viruses can. Some spyware hides itself as registries so deep scanners are needed. But new viruses and mutations are created faster than antispyware/virus software designers can update their kit. AVG is probably the best anti virus. But as i say, no anti virus will stop ever virus, many are embedded into website script so can get into your system that way.
Some1 mentioned that you get viruses from downloading, true but that isnt the only way. Programmes such as msn, icq, yahoo messenger, soe multiplayer internet games and xfire gaming open up extra ports to the internet which cannot all be policeda t once by an anti virus or anti spyware.
Kaspersky is a good alround scanner, sorts out the registries. Best way to sort out malicious spyware and trojans in the registries is to manually delete them, although, this does have tis risks. Registries are extra information DOS and other such aspects of the windows operating systems use to obtain the final product i.e. your desired outcome. If you delete the wrong one, then there is the potential for it to all go ape sh*t.
May i also point out defragmenting your hard drives every so often allows more effective scanning and improves cpu access speed