Firewalls - what for?
However, it must be stated clearly that firewall does NOT replace antivirus software or being cautious. It doesnt prevent files on your computer to be corrupted nor spreading of viruses and worms. It does, however, usually prevent harmfull trojan horse programs and other backdoor programs from contacting net and opening your computer to some hacker. It also prevents programs from sending information about you to their manufacturer (like spyware programs)if you dont allow the particular program to go access internet.
At this point, I need to mention about WindowsXP:s "firewall". In short: Avoid it if you can! It only closes inbound ports from connections. It doesnt prevent outbound connections or specify which programs can connect to net. So, dont use it. Get rid of it totally and install ZoneAlarm or similiar instead. Also, you may have heard about "Black Ice Defender" or "BID". Again, forget it too. Its NOT a real firewall, its just an inbound port blocker. It doesnt allow outbound filtering. Some people find it usefull to check who is knocking their ports, but otherwise its pretty much useless. Get rid of it and install REAL firewall like ZoneAlarm.
If you are using WindowsXP SP2, then your might not need to bother yourself with installing ZoneAlarm. SP2 Internet Connection Firewall does its job much better than earlier versions of it. If you dont want to mess with 3rd party firewall like ZoneAlarm, stay with SP2 Internet Connection Firewall! Also, ZoneAlarm does not work with latest versions of F-Secure products, so if you are using F-Secure, better dump ZoneAlarm and trust ICF or F-Secures firewall (if it has one!)...
However, please notice, that before you have option to go to internet and download ZoneAlarm, you NEED to have some firewall running to block inbound traffic...if you dont, your computer gets infected before you have installed ZoneAlarm. In this case, use WindowsXP firewall, you can find the guide on how to enable it in my Win2k/XP page