I've used most of those up there and I have to say my experience with ZoneAlarm has been pretty solid. Combined with a router, all the casual user really needs.
/edit
Definitions for people who don't know:
NAT allows an IP-based network to manage its public (Internet) addresses separately from its private (intranet) addresses. It is a popular technology for Net connection sharing on DSL or cable LANs. With NAT, each private IP address can be translated to a different public address, or multiple private addresses can be aliased to a single public one. To accomplish this, NAT software snoops both incoming and outgoing packets on the network. It modifies the source or destination address in the IP header (and the affected checksums) to reflect the mapping between internal and external addressing for that network.
NAT functionality appears on routers and other gateway devices with low-level access to packets at the network boundary. Several variations on NAT have also been implemented to provide additional support for application-level protocols. NAT for the Internet is defined in RFC 1631.
Also Known As: Network Address Translation
*nix : Slang term denoting any of the myriad of flavors of Unix or Linux (Ultrix, HP-UX, Tru-64, Solaris, AIX, FreeBSD, etc.). It's often convenient to refer to them in general, rather than specifically, because much of what is true is true accross the board.