I have had ZoneAlarm installed on my computer since shortly after 9/11/2001; and I was sold on it less than a day after installing it.
As soon as ZoneAlarm was installed and set up, I started getting alerts saying that such-and-such ip address was trying to access my computer. When I ran a tracert (that's a program in Windows that traces the route to ip's and url's), I discovered that a very large percentage of those attempts were coming from the Middle-Eastern countries. They were apparently trying to use my computer to communicate! ZoneAlarm stopped them cold. Now, only the programs that I designate can send or receive over the internet.
I also have an antivirus program; and it works very well; but I have ZoneAlarm set so that my Outlook Express has to ask permission to get on the internet and so that it sends and receives only when i tell it to. Needless to say, I do not send out virus emails. Even if a virus gets in, it cannot send unless I say so. Pretty good, huh?