There is more to it than just raw data rate. For consumer use, SATA has been capable of transferring data to/from a hard drive faster than any other as it is a direct and native processor to drive controller data flow, but there is overhead and there is the effects of the OS and how well the HD performs. There are faster protocols, like SAS, but expensive for consumer use. SATA also has a one meter or less limit, intended for internal connections, was not intended to go outside the box.
By the way, there is also error encoding on the raw data so there is about 10 bits for every 8 bit Byte. 6Gbps is roughly equivalent to 600MBps of data, but nothing achieves that due to protocol and OS overhead.
You typically need more than two drives connected either via a port multiplier or RAID to saturate a single computer's SATA port.
So yes SATA transfers more data per second than firewire, but the one meter and signal integrity limits you to short runs (you really need good cables and connectors). On the other hand, firewire is designed for outside the box and can move data quickly over many meters.
So a useful answer depends on a bunch of things not mentioned. Like, if your hard drive is three meters away from your computer, firewire will be faster.