If there's one thing I like, it's good, free software. I started using m0n0wall as my home firewall/NAT gateway a few weeks ago, and I'm completely in love with it.
m0n0wall is a small (<4MB) FreeBSD distribution that can be run from a compact flash card. It has a beautiful and intuitive PHP-based web interface for configuring and tweaking firewall rules and other settings. It's got more features than you can shake a stick at, and it's very professional and polished. As an added bonus, it'll even act as an 802.11b gateway if you've got the right hardware.