The traditional answer to that is that a "software firewall" generally has egress filtering and can alert you to specific programs trying to get out to the internet, whereas a hardware device can't give you such clues.
If the primary concern is blocking unsolicited traffic from the internet, a sane SPI home gateway device should do fine.
The hardware device is generally a more robust solution because the "personal firewall" software runs on top of windows... and we know that windows is fairly complex and no infallable to say the least.
Just like network based and host based intrusion detection products offer complementary protection, so do hardware and software "firewall" solutions.