Sebastian Vettel won the British Grand Prix for Ferrari on Sunday to deny Lewis Hamilton a fifth successive home victory and move eight points clear at the top of the Formula One standings.
In a thrilling race with two safety car periods, reigning champion Hamilton went from pole position to the rear of the field before finishing second for Mercedes in a superb fightback.
Ferrari's Kimi Raikkonen was third, after incurring a 10-second penalty for tangling with the slow-starting Hamilton at the third corner of the opening lap and sending the Briton spinning.
The win was Vettel's fourth of the season, 51st of his career, and once-dominant champions Mercedes' first defeat at Silverstone since 2012 before the V6 turbo era started.
"You're a lion," the elated team told him over the radio at the chequered flag as they celebrated Ferrari's first win in Britain since 2011.
"I was a bit concerned going into the race but I was fine, probably a bit of adrenaline," said the German, who had struggled with a neck strain on Saturday.
"The neck held up and that was a race I enjoyed a lot and I think the people enjoyed it a lot."
Hamilton was on a charge from the first lap, back up to seventh already after nine laps but still 26 seconds behind his fellow four-times world champion.
The appearance of the safety car on the 33rd of 52 laps, after Sauber's Marcus Ericsson crashed, was greeted with a huge cheer from the 140,500 crowd and was just what Hamilton needed to close the gap.
Vettel pitted but Mercedes kept Hamilton out, assuring him he was "the fastest guy by miles" with everything to play for on tyres that would last the distance.
Hamilton's team mate Valtteri Bottas then led and a second safety car, after Renault's Carlos Sainz and Haas's Romain Grosjean collided, kept the front four nose to tail and only fractions apart.
Vettel then passed Bottas five laps from the end, with the Finn's tyres fading, and Hamilton was also through a lap later and the chase was on to the finish with the German winning by 2.2 seconds.
"This is the greatest race of the year and the greatest crowd, I am sorry I could not bring it home for you today," Hamilton told the crowd. "I will not give up, believe me, I will not give up.
"My team did an amazing job this weekend, we got so much support. Interesting tactics I would say from their side, but we'll do what we can to fight them."
Raikkonen held his hand up and admitted he had made a mistake.
"At the third corner I locked the wheel so I ended up hitting Lewis on the rear corner. He spun, my bad," said the 2007 world champion.
"It was my mistake. I deserved it," he added of the penalty. "I took the 10 seconds and kept fighting."
Optimistic media celebrate England's World Cup semi-final spot
Superb Zaman blasts Pakistan to tri-series final win over Australia
Force India open to offers: Mallya
How Ganguly's gamble on youngsters helped India retain Dhoni
Old-style Wimbledon lawns would have snagged Nadal, says Laver