An illustration of how it can be faster, even at very small scales:
Consider a server with a 10Mb/s symmetrical connection to the Internet, and two home users with 10Mb/s down, 5Mb/s up. The two home users (A and B) are trying to fetch the same large file, located on the server. The best case scenario for A and B with a conventional download is that the server will dedicate 5Mb/s to each.
With a torrent, A and B can collude for better results. They each download at 5Mb/s from the server, but they download different halves of the file. Meanwhile, they are also sending each other their respective missing half at 5Mb/s. Effectively, A and B are able to download the file from the server at 10Mb/s each, simultaneously, even though the server only has 10Mb/s total upload bandwidth.
Torrents don't work
exactly like that (things are less directly coordinated), but the end result is more or less the same.
Edit:
Talya wrote:
What started off as a peer-to-peer sharing protocol is now used by a few software companies to speed up patch downloads.
Specifically, I know that Blizzard definitely does this for WoW. Back when I was playing WoW, I was doing it under WINE on Linux. The game itself ran great, but their patch client was always a little clunky at best and iffy at worse under WINE. So I found a utility that could extract a .torrent file from the patcher .exe, and then I could download the patches with Transmission or whatever.