Three very good questions, with a multitude of answers however, there is no absolute choice. Let us start by asking what you are looking to accomplish. If you have a digital camera, or an external hard drive, or a computer recording interface, you have the choice of both.
Ipod’s and other personal mp3 players typically use USB. If you are using audio and video devices such as digital cameras, or digital audio mixers and recorders, then USB is not the best solution. Speed (bandwidth) is not the primary concern with these types of devices, however reliability and consistency are.
USB (version 1) was first introduced in 1996, and quickly caught on as the next “must have” PC option. It was designed to offer two speeds; low speed at 1.5 megabits per second, and full speed of potentially 12 megabits per second. There were technical problems and limitations, so the standard was revised and version 1.1 was released in 1998. Again, more problems were noted, and another revision to version 2.0 was released. With USB version 2.0, High-speed was implemented, which allows up to 480 megabits per second. USB also allows up to 127 physical devices to be connected in a daisy chain - although there are some technical limitations, such as the need for usb hubs.
USB’s main problem lies in reliability and consistent speeds. This can be attributed to the design of the USB protocol. USB devices are essentially slave devices to a master controller, which is a microchip on the motherboard of your computer. USB peripherals essentially operate by answering requests from the host controller. If they are transferring data, or images, they can only do so when the host controller asks. Bottom line, USB was designed to be cheaper and easier to use.
Firewire (sometimes called 1394) on the other hand has some very different properties. First and foremost, firewire 400 is 400 megabits a second. Firewire version 2 is Firewire 800, double the first version. Firewire doesn’t operate on a “respond to requests” format as USB device does, and has the capability to deliver a consistent bandwidth. This is because any firewire device can control the firewire port and all communications. USB requires a hoist controller, whereas any firewire device has the host capabilities built in.
Firewire is the way to go if you are transferring or editing video or audio. It can reliably deliver consistent bandwidth and is significantly faster than the best that USB has to offer, however it is not as common as USB.