No need to BUY any. There are some great FREE ones out there that do a superb job.
The two I use on a regular basis are Malwarebytes' Anti-Malware. Download, install, UPDATE. Scan. Remove whatever it finds.
Do this once a week at least and your computer will stay pretty clean. Always UPDATE before each scan.
Another one is Spybot Search and Destroy. Just be sure NOT to enable the TeaTimer portion of the program, it is more trouble than it is worth and does interfere with fixes which occasionally may need to be done. Download, install, update before each scan. Fix or remove critical items found.
Best preventative is SpywareBlaster.
Download, Install, Update, Enable all. Close the program. Keep it updated and enabled and that is it.
All of the above are FREE, they do offer paid versions but the FREE ones work great.
Also keep ONE anti-virus program running and ONE firewall. You don't have to pay for those either, there are some really good FREE ones out there that work great.
As was stated by jholland, there are some great free AntiVirus programs out there.
Ive used Avast on my XP machines for years with great results.
Im also using a all-in-one from BitDefender right now on my Vista machine.
Check out review sites like toptenreviews.com for info on what might work best for you.
In this era of malware exploits, you cant afford to not be protected.