Marc Marquez has taken his second 125cc grand prix victory in a row after a stunning showdown with Pol Espargaro at Silverstone on Sunday.
The race was a 2x3 affair, with Marquez and Espargaro dueling up front while Bradley Smith, Nicolas Terol and Efren Vasquez fought for the final podium position.
Espargaro shadowed pole sitter Marquez for almost the entire race, starting his victory attack with a pass at turn one on the penultimate lap.
Marquez quickly chopped across on the exit to regain the advantage and when Espargaro tried again into Stowe the pair made contact on the exit.
Several further close exchanges followed before the last lap began with Marquez's Red Bull Derbi still just in front.
Espargaro then pulled off a brave pass through the Maggots/Becketts complex and the pair went back and forth several more times, resulting in Espargaro trying to slipstream back past the fearless Marquez into Brooklands at the end of the lap.
Espargaro duly lunged for the inside, but the front wheel tucked and he looked destined to be sent tumbling off track - until a remarkable save saw the Spaniard keep his Derbi on two wheels to take the flag in second.
The fight for third was just as dramatic, with Aspar Aprilia's title-leader Terol tagging Vasquez into a highside through the ultra-fast Abbey turn.
Terol remained on two wheels, but the incident handed his delighted team-mate Smith a first podium of the season, and first ever in front of his home fans.
Espargaro has now taken the title lead from Terol by one point, with Marquez - who only took his first grand prix win at the previous Mugello round - 17 points behind in third, heading into Saturday's Assen round.
Race results - Silverstone:
1. Marquez (Derbi) 17 laps
2. Espargaro (Derbi) +2.576s
3. Smith (Aprilia) +13.446s
4. Terol (Aprilia) +17.117s
5. Koyama (Aprilia) +35.641s
6. Cortese (Derbi) +39.184s
7. Krummenacher (Aprilia) +39.258s
8. Zarco (Aprilia) +39.949s
9. Rabat (Aprilia) +40.510s
10. Webb (Aprilia) +50.287s
24. Brown (Honda) +1lap
Mackenzie (Honda) DNF
Kent (Honda) DNF
Lodge (Honda) DNF