There are "personal" firewalls and "dedicated" firewalls.
A personal firewall is not really a true firewall, but software which sits on the client and try to block suspicious activity.
A dedicated firewall is a separate computing device which sits between users and the net. They can be anything from something built into a router, or software running on a PC or Unix box.
It depends on your level of comfort with configuring network devices. The applicance type ones are generally less configurable and easier to set up. The freeware Linux ones may be more challenging to setup but seem more flexible. The Linux route is the least expensive - you can often use low end PCs, since Linux performs well on them.
There are anti-virus services which hook into firewalls but they seem expensive to me, and usually require to either run on a proxy or another dedicated box which acts like one. I'd be more concerned that each PC have up to date virus definitions, unless you are working witha very large organization.
There is a world of options out there. Check out Borderware, Checkpoint Software, Raptor etc.
James