Bradley Smith stormed to a stunning debut Grand Prix win in the 125cc race at Jerez in southern Spain.
Starting from second on the grid, the 18-year-old from Oxfordshire was left way out in front as two of his main rivals crashed out in the opening laps.
Sergio Gadea pipped fellow Spaniard Marc Marquez for second place.
Andrea Iannone, who won the opening two races of the season, fell on the first lap but returned to complete the race out of the points.
Smith, starting his 50th Grand Prix, took advantage of pole-sitter Julian Simon's poor start to take the initiative from the outset.
Smith gets rave review from Prodigy's Flint
After Iannnone's early crash, Simon began to close the gap on Smith but he too crashed out on lap six, leaving the Briton clear at the front, and by the midway stage of the race Smith had opened up a remarkable lead of over 20 seconds.
With Smith so clear at the front, the great drama of the day was the battle for second place, with Gadea snatching it from Marquez right at the death.
But the story of the day nearly belonged to 15-year-old Germany rookie Jonas Folger.
Having started the day at the very back of the grid, he had worked his way up to fourth spot when he crashed out on the penultimate lap.
Championship leader Iannone finished in 19th place, outside the points, and saw his lead in the standings cut to one point by Smith.
"You watch these races in years gone by when people won by 15-20 seconds and think 'how is this possible?', so for me to do it today was unbelievable," said Smith afterwards.
"To keep seeing those seconds going up on the pit board, words can't describe it.
"The bike was working so well, I was just keeping my head down lap after lap. It was a freaky race and as the race went on, the wind was getting worse, so I was thankful I had a bit of a gap.
"I think it was just meant to be my day today."
Spanish 125cc Grand Prix result:
1 B Smith (GB) Bancaja Aspar 41 mins 45.996 secs 2 S Gadea (Sp) Bancaja Aspar 42:03.080 3 M Marquez (Sp) Red Bull KTM 42:03.109 4 S Redding (GB) Blusens Aquila 42:03.807 5 E Vazquez (Sp) Derbi 42:04.314 6 S Cortese (Ger) Ajo 42:05.101 7 P Espargaro (Sp) Derbi Racing 42:05.112 8 D Webb (GB) Degraaf 42:07.328 9 D Aegerter (Swi) Ajo 42:08.516 10 N Terol (Sp) Jack and Jones 42:08.609
125cc championship standings:
1 A Iannone (Ita) Aprilia 37.5 pts 2 B Smith (GB) Aprilia 36.5 3 P Espargaro (Sp) Derbi 31.5 4 J Simon (Sp) Aprilia 30
5 S Cortese (Ger) Derbi 28
This page is best viewed in an up-to-date web browser with style sheets (CSS) enabled. While you will be able to view the content of this page in your current browser, you will not be able to get the full visual experience. Please consider upgrading your browser software or enabling style sheets (CSS) if you are able to do so.