Keep in mind that a lot of the free anti-virus programs are on-demand scanners only, they do not provide real-time protection. Once you are infected, it's usually too late to use an on-demand scanner as the malware usually disables it.
Microsoft Security Essentials, while free, does provide real time protection. When evaluated, it usually does fairly well in terms of effectiveness, particularly so for a free program. I use it on several of my machines that spend little time on the Internet.
For a paid-for program I have been very happy with BitDefender Internet Security. My last machine with a subscription is coming up for renewal, and I am debating whether to go with MSE or renewing the BitDefender subscription for another year.
The laptop I am posting this from is a machine I purchased dead from a customer of my former computer business. It came with Norton 360 installed. While it is rated as very effective, it can be a real PITA at times.