USB 2.0, developed by Intel and Compaq in the late 1990's, is a peripheral connection standard designed to supercede the aging USB 1.1 spec and to allow uses more flexability than either USB 1.1 and traditional connections (RS-232 serial, IEEE parallel, and PS/2 and ADB input ports) in a compatible manner.
USB 2.0 differs from older USB primarily in speed. Whereas USB 1.1 is limited to switched connections of 1.5 megabits/sec or 12 megabits/sec, USB 2.0 employs the so-called "40x multiplier" to boost speeds up to 480 mbps while retaining compatibility with the two slower USB 1.1 speeds.
Indeed, despite the faster speed, USB 2.0 is designed to be as compatible with older peripherals as possible, and in one case it does a better job than 1.1: Under USB 1.1, every peripheral on a root hub branch had to operate at the same speed. This means that if you had a scanner and camera on the RHB, they would both operate at 12mbps. However, if you added a slow-speed device, say a mouse, every device on that branch would have to slow down to 1.5mbps. Under USB 2.0 with a USB 2.0 compliant hub, however, each port on each device can dynamically translate the connection speeds so you can have 480, 12 and 1.5 mbps devices all on the same Root Hub Branch, all operating at their native speeds.
USB 2.0 does however have some drawbacks compared to its arch-rival, FireWire. USB was never intended for mass storage or large scale data transfer and thus it is still a suboptimal choice, even with 2.0. USB 2.0 still lacks acceptable Quality of Service facilities (QoS) and does not function well when many devices are on the line due to the increased polling overhead. On the other hand, USB 1.1 and 2.0 peripherals will usually be much cheaper than their FireWire rivals and are more usable due to the ubiquity of USB ports.
mblase has also raised another consideration that deserves to be gone in in more depth. USB device are, by and large, stupid. By this I mean that they have little logic built into themselves and thus rely on the host computer to do everything for them. This makes it very difficult for USB 2.0 to achieve the 480 mbps it claims; the CPU and protocol overhead becomes very heinous as you have more peripherals that are all trying to shuttle data at such high speeds because they can't do any of the transmission handling themselves. This gives lower cost to the devices, but a much higher requirement of the host CPU.