Ducati's Francesco Bagnaia got the measure of six-time world champion Marc Marquez in a gripping duel to win the Aragon MotoGP from pole on Sunday.
Yamaha's Fabio Quartararo retained the world championship lead despite finishing down the field in eighth.
This was Bagnaia's debut success in the premier category after 10 wins combined in Moto2 and Moto3.
After nailing pole position with a track record time on Saturday, Bagnaia led from the start tracked by Marquez, who was hunting his 58th MotoGP win.
The pair soon pulled clear of the pack with Marquez launching multiple attacks over the closing laps.
On his last passing attempt the Spaniard, who was born not far from the Motorland circuit, went too wide on a turn, allowing Bagnaia to take a hard-fought but deserved first MotoGP win.
"This victory today is like a release. We've worked hard to get this result," said Bagnaia.
"It wasn't easy to keep in front of Marc, he's still very competitive even if he's not at 100 percent," added the Italian alluding to Marquez's season-ending crash last year.
Marquez said despite trying his damnedest, Bagnaia proved too hard a nut to crack.
"'Pecco' was too strong. I tried to see where his weak points were but he didn't have any. He was braking later than me. I tried (to overtake him) but each time I was at the limit."
- Not a 'disaster' -
As for Quartararo, he was maintaining a positive approach.
"I don't consider this is a disaster. Today something didn't work, we'll have to see what it was."
Defending world champion Joan Mir came third.
With five rounds of the season to go Quartararo leads the race for the riders' crown on 214 points, with Bagnaia in second on 161 and Mir four points further adrift.
Bagnaia led from pole on his factory Ducati from Marquez and Australian Jack Miller on the other Ducati.
Quartararo, who started on the front row, had a poor start, dropping back to seventh.
Marquez kept pace with Bagnaia with the front pair pulling over three seconds clear of the chasing pack now led by Mir as Miller slipped to fifth with a dozen laps to go in the Spanish sunshine.
This track has never been kind to Quartararo and the 22-year-old wasn't about to buck that trend as he approached the closing laps in ninth place.
Marquez was edging ever closer to Bagnaia, ready to pounce.
With three laps to go he tested the temperature, going up the inside to briefly take the lead.
He tried again and again but each time Bagnaia had him covered until Marquez lost ground going wide on the final lap.
Down in 18th came Maverick Vinales on his debut with Aprilia after his acrimonious split with Yamaha.
Following Vinales across the line was Valentino Rossi, the 42-year-old Italian legend who retires at the end of the season.
Bagnaia's compatriot Dennis Foggia took the Moto3 honours earlier as Spanish duo Pedro Acosta and Sergio Garcia, the first two in the championship standings, both fell.
The home fans did have one home winner to celebrate with Raul Fernandez beating Australian Remy Gardner to win the Moto2 race.
Bagnaia will have hopes of cutting the championship gap further with Quartararo in a week's time when MotoGP pitches up on his team's home turf at Misano.