Moscow, New York and Madrid were eliminated during the first three rounds.
"It is a momentous day for London," British Prime Minister Tony Blair said from Gleneagles, Scotland, where he is chairing the G-8 summit of industrialized nations discussing international economic issues.
"It is not often in this job that you get to punch the air and do a little jig and embrace the person standing next to you," he said, Reuters reported.
London last hosted the games in 1948, while Paris was frustrated for the third time in 20 years. It hasn't held the games since 1924.
"I'll put all my energy into our recovery, so that we know how to make something big and positive out of this ordeal," Paris Mayor Bertrand Delanoe said, according to the Associated Press.
Blair, who spent two days lobbying in Singapore this week, said he "couldn't bear to watch" the vote on television and only got word of the results when he received a call from the switchboard at his Downing Street office in London.
International Olympic Committee President Jacques Rogge opened a sealed envelope and declared the result on live television.
The tan-suited London delegates in the convention hall leaped out of their seats, arms raised in jubilation and cheering wildly, reported the AP.
In London, crowds cheered and waved flags as they watched the results on a giant screen in Trafalgar Square and in the east London area where the main Olympic complex will be based.
Paris had the perceived advantage of bidding for the third time, since the IOC tends to reward persistence. The French capital also has an existing Olympic stadium in the Stade de France.
However, even a trip by French President Jacques Chirac to Singapore this week failed to secure a victory.
Throughout the balloting, London held a steady lead. IOC members said London won favor because its bid offered a long-term legacy and its team offered a passionate final presentation.