click here for advice and lots of links to free firewalls you can download.
I think the reason people pay for firewalls:
1: You get what you pay for.
2: Firewalls may come packaged with antivirus/Internet security suites.
3: Paid for Firewalls often have features that the free versions don't have. For example, Free version of Zonealarm doesn't support Networks whereas the paid version does.
I would stick to free firewalls as they all basically do the same job as the paid-for versions apart from the extra fancy frills.