Viruses: Which ever one you use, keep it up to date. I like Nod32, Norton & McAfee are very good at what they do, but also take up more system resources .
Spyware: Download and install SpywareBlaster (free), update it and let it protect you. This is a good anti-activex/site protector and uses no resources. Also you will want to download another program like Microsoft Anti-Spyware, it's a real-time scanner and does very well, (and it's free).
Firewalls: I personally don't like software based firewalls. I use the router based on my linksys dsl router, it a statefull packet inspection fw, and the router runs NAT/DHCP. Most attacks from the Internet that use various ports won't get through, and seeing as how it's router based, I have no intrusive fw software screwing up things on my computer. It's up to you,... if you must have a sofware based fw, I've use Outpost Free before which did ok for software based... the default windows fw is really basic.