Someone commented about "real-time" virus protection versus "scanning," and implied the former is superior to the latter. I suppose one could argue that, in theory, it is better to prevent than cure. But I find the real-time processes to cost a bit too much in the way of performance (not just with BIAB but with everything, but especially BIAB).
I find running an automatic nightly scan (I use AVG Free) is fine. I also run Spybot Search & Destroy (which is also free, but I throw them 25 bucks every year) and Ad-Aware Free. The only real-time feature I run is Spybot's "immunization," which is preventive. I also run the email scanner of AVG, but I don't consider that real real-time. I will scan with Spybot and Ad-Aware weekly or every ten days.
Also, I don't like any product that purports to do it all. They invariably do nothing well.
And further, using a router provides a very good hardware firewall. So good, in fact, that it is unnecessary to run Windows firewall -- unless there are machines on your side of the network that you don't trust, like a child's computer -- or a dumb-ass adult's.