Another good protection is a firewall, many virus's come in small packets to slip by anti virus software, then they 'phone home', a good firewall will see the out going threat and block it, the resident package can then be deleted safely. The resident package is no threat until it is allowed to 'phone home' and collect its pay load. Firewalls also prevent these self healing virus's by not allowing them to phone home to repair.
MS fire wall is ok for basic protection but people should consider a more extensive product to be safer, be sure to turn off the MS one if you have another installed, sometimes the two conflict and protection is reduced or nullified.
Shut down any ports you dont need (firewalls are good for this) and close many MS auto discuss, self check, help routines in services.msc for example theres a service that checks every few minutes direct to MS for a real time clock up date, that path has been used before to slip viruses into PCs, you want to know the time....look at a clock

. Remote desk top help is another. Additionally, shutting down these surplus services will stop many applications running in the back ground, free up CPU clock time and make your PC run faster, about 30 services is a good level to look for in XP pro, couldn't say for other OS's.
I use AVG free, Zone alarm free and best of all a router and have had no infections for years, I also practice what others above advocate, no dodgy sites, no auto open email etc etc. I've been told the router is probably one of the best options to remain hidden on the net, web silence is one of the best forms of anti virus around, if they cant see you then they cant attack you. whether you need a router or not, putting one upstream is always a good safe guard, I need mine to serve as a hub for other PC's in the house, but I know of quite a few friends who simply buy one to put upstream to stop virus's.
I also use CCcleaner theres an option in there to stop 'start up' services, things like real player and adobe all have services that run on boot up....which you dont need....often talk on the net for updates with out you knowing....which you dont need....and open ports for viruses to slip in. CCcleaner wont stop critical start OS services, only software you added services, its frightening how many of these mundain software products clog up your PC with back ground serivices you dont need.
Hope that helps someone.
Best
Michael