It's common practice to install a software firewall evn when using a router which has it's own hardware one, since only a software one gives you control over individual programs and also maintains a log file of what's been allowed through and what's been blocked.
Your router firewall allows very little user control other than turning it on/off or putting it into gaming mode, and there's no feedback as to what's passing through it or what it's blocking.
One thing to remember. Whilst it's okay to have a hardware firewall enabled together with a software one (this gives you a second line of defence in case the software one crashes or fails to start), you should not have two software firewalls running together as they will conflict.
If running XP which has a built-in firewall, any other firewall you install will usually automatically disable the XP one, or it will warn you do disable it first during the installation process.
So, by all means install your own firewall to complement the router one.
For a free one you can't do better than 'ZoneAlarm'. It consistently gets top marks for ease of use and good protection:http://www.zonelabs....a...=GB&lang=en