Silverstone, Northamptonshire - Lewis Hamilton has won his home British Grand Prix, slashing Mercedes team-mate Nico Rosberg's Formula One lead to four points after the German retired for the first time this season.
Hamilton, who last won at Silverstone in his 2008 championship year, now has 161 points to Rosberg's 165 with 10 races remaining and his title hopes fully restored. It was his fifth win of the year.
"I don't want to see a team-mate fail, I want a one-two, but I really needed this result," said Hamilton on the podium in front of a cheering crowd.
Valtteri Bottas finished second for Williams, 30.1 seconds behind Hamilton, for his second successive podium and best finish yet after starting 14th following a nightmare in qualifying.
Daniel Ricciardo was third for Red Bull, a further 16.3 seconds down the road.
The race was red-flagged almost as soon as it started after Ferrari's 2007 champion Kimi Raikkonen had a big crash that left the Finn limping to the medical centre with a sore ankle but otherwise unscathed.
It was the first time a race had been halted on the opening lap since Monaco 2000.
When it re-started behind the safety car after an hour's delay to fix damaged barriers, Hamilton went from overnight devastation to delight as Rosberg finally suffered some of the misfortune that had plagued his team-mate.
The championship and race leader reported a gearbox problem after 20 of the 52 laps, and just after Hamilton's race engineer had informed the second placed Briton it was "Hammer time' - time for a full-on charge.
Nine laps later, Rosberg slowed, pulled over and parked on the grass as Hamilton sped past his only rival for the championship.
"It was just slowly but surely," said Rosberg, who had previously finished first or second in every race while Hamilton has endured two retirements through no fault of his own.
"It started on lap 20 and then it just got worse from there. There was nothing I could do or that they could suggest to save the gearbox.
"I was very much in control until then," added the German. That's why it's all the more disappointing."
Hamilton's joy as he took the chequered flag was a complete contrast to the despair he felt on Saturday evening after gifting pole to Rosberg.
"England!" he said as he took the chequered flag to give his compatriots something to celebrate after a sporting summer of disappointment.
"I couldn't be happier. I'm sorry about yesterday, but a fantastic job today, as ever."
Rosberg had secured the top slot on the grid after Hamilton aborted his final lap in the mistaken belief that track conditions would not allow anyone to beat his time.
"Last night was tough for him.
"He was devastated," his father Anthony said before the race. "It hurt, not being able to deliver for the fans or team, but he came back with a fresh mind."
Jenson Button, the most experienced driver in the race who has never finished on his home podium, chased Ricciardo home to take fourth for McLaren on an emotional afternoon for the 2009 champion.
"Just one more lap might have been different," acknowledged Ricciardo. "Jenson was coming but I was able to hold on for the podium."
The race was the first at Silverstone for Button, who started third on the grid, since the death of his father John in January. The Briton wore a pink helmet as a tribute while fans donned 'Pink for Papa' shirts.
Red Bull's four-times champion Sebastian Vettel finished fifth after a lively battle with Ferrari's Fernando Alonso, who took sixth after starting 16th and then being hit with a stop/go penalty for overshooting his mark on the grid.
Danish rookie Kevin Magnussen was seventh for McLaren, with Germany’s Nico Hulkenberg eighth in a Force India. Russian Daniil Kvyat and Frenchman Jean-Eric Vergne were ninth and 10th respectively for Toro Rosso.
There was disappointment for Brazilian Felipe Massa, whose 200th race start did not even last a lap.
The Williams driver spun to avoid slamming at speed into Raikkonen's car as it bounced off the barriers and returned to the track, but there was still contact and too much damage to make the re-start. – Reuters
1 Lewis Hamilton (Britain) Mercedes – 2hours 26m52.094s
2 Valtteri Bottas (Finland) Williams +30.135s
3 Daniel Ricciardo (Australia) Red Bull +46.495
4 Jenson Button (Britain) McLaren +47.390
5 Sebastian Vettel (Germany) Red Bull +53.864
6 Fernando Alonso (Spain) Ferrari +59.946
7 Kevin Magnussen (Denmark) McLaren +1:02.563
8 Nico Huelkenberg (Germany) Force India +1:28.692
9 Daniil Kvyat (Russia) Toro Rosso +1:29.340
10 Jean-Eric Vergne (France) Toro Rosso +1 lap
11 Sergio Perez (Mexico) Force India +1 lap
12 Romain Grosjean (France) Lotus +1 lap
13 Adrian Sutil (Germany) Sauber +1 lap
14 Jules Bianchi (France) Marussia +1 lap
15 Kamui Kobayashi (Japan) Caterham +2 laps
16 Max Chilton (Britain) Marussia +2 laps
17 Pastor Maldonado (Venezuela) Lotus +3 laps
R Nico Rosberg (Germany) Mercedes +23 laps
R Marcus Ericsson (Sweden) Caterham +41 laps
R Esteban Gutierrez (Mexico) Sauber +43 laps
R Felipe Massa (Brazil) Williams +51 laps
R Kimi Raikkonen (Finland) Ferrari +52 laps
Fastest Lap: Lewis Hamilton - 1:37.176, lap 26.
1 Nico Rosberg (Germany) Mercedes - 165
2 Lewis Hamilton (Britain) Mercedes - 161
3 Daniel Ricciardo (Australia) Red Bull - 98
4 Fernando Alonso (Spain) Ferrari - 87
5 Valtteri Bottas (Finland) Williams - 73
6 Sebastian Vettel (Germany) Red Bull - 70
7 Nico Huelkenberg (Germany) Force India - 63
8 Jenson Button (Britain) McLaren - 55
9 Kevin Magnussen (Denmark) McLaren - 35
10 Felipe Massa (Brazil) Williams - 30
11 Sergio Perez (Mexico) Force India - 28
12 Kimi Raikkonen (Finland) Ferrari - 19
13 Jean-Eric Vergne (France) Toro Rosso - 9
14 Romain Grosjean (France) Lotus - 8
15 Daniil Kvyat (Russia) Toro Rosso - 6
16 Jules Bianchi (France) Marussia - 2
1 Mercedes - 326
2 Red Bull - 168
3 Ferrari - 106
4 Williams - 103
5 Force India - 91
6 McLaren - 90
7 Toro Rosso - 15
8 Lotus - 8
9 Marussia - 2