Francesco Bagnaia triumphed in MotoGP's first sprint race after Marc Marquez snatched pole position for Sunday's Portuguese Grand Prix.
Reigning series champion Bagnaia fended off Jorge Martin in the half-distance sprint, winning by 0.307 seconds, with Marquez taking third position and Jack Miller fourth.
That race came after Marquez rolled back the years by roaring to pole for the sprint and Sunday's main event at the season-opening race weekend.
Six-time MotoGP champion Marquez endured a miserable 2022 season and only achieved one podium, but he reasserted himself as a threat for the new campaign with a dazzling lap record.
He pipped Bagnaia to pole, with Martin starting third on the grid.
It was just Marquez's second pole since his 2019 championship-winning season, with his show-stealing lap coming late on in Q2 after Bagnaia had looked set to bag first position on the grid.
Spaniard Marquez, who turned 30 last month, surprised himself with his qualifying pace.
He said afterwards: "I don't know, I cannot explain because I don't understand, honestly speaking. I don't understand the situation.
"Yesterday we were struggling a lot and today it's true that I started to ride in a better way, I improved myself and the guys yesterday did an incredible job and improved some small details.
"Today in FP3 I already felt good and smooth to ride. I was alone and was consistent."
Marquez senses real limitations with his Repsol Honda RC213V, but he found a way to bypass those in qualifying.
Quoted on motorsport.com, Marquez said: "It's true that to do a very quick lap with the Honda, we need a slipstream. It's not the best way, it's not the most polite way to do a lap time. But it's one of my strongest points.
"So, if the strong point is there, I need to take profit of that. It's not easy to follow a guy, but at the moment it's the only way."
That factor meant Marquez was not likely to be a front-runner in the sprint itself, but third place represented a strong outcome all the same.
Bagnaia's Ducati team-mate Enea Bastianini crashed during the sprint and suffered a right scapula fracture, meaning he was taken to hospital in Portimao.
GRID CLASSIFICATION
1. Marc Marquez (Repsol Honda) 1 minute 37.226 seconds
2. Francesco Bagnaia (Ducati) + 0.064 secs
3. Jorge Martin (Pramac Racing) + 0.228s
4. Miguel Oliveira (RNF) + 0.295
5. Jack Miller (Red Bull KTM) +0.323
6. Enea Bastianini (Ducati) + 0.358
7. Maverick Vinales (Aprilia) + 0.372
8. Marco Bezzecchi (Mooney VR46) + 0.390
9. Luca Marini (Mooney VR46) + 0.396
10. Johann Zarco (Pramac Racing) + 0.654
SPRINT RESULT
1. Francesco Bagnaia (Ducati) 19:52.862
2. Jorge Martin (Pramac Racing) +0.307
3. Marc Marquez (Repsol Honda) +1.517
4. Jack Miller (Red Bull KTM) +1.603
5. Maverick Vinales (Aprilia) +1.854
6. Aleix Espargaro (Aprilia) +2.106
7. Miguel Oliveira (RNF) +2.940
8. Johann Zarco (Pramac Racing) +5.595
9. Alex Marquez (Gresini) +5.711
10. Fabio Quartararo (Monster Energy Yamaha) +5.924
CHAMPIONSHIP STANDINGS
1. Francesco Bagnaia (Ducati) 12 points
2. Jorge Martin (Pramac Racing) 9
3. Marc Marquez (Repsol Honda) 7
4. Jack Miller (Red Bull KTM) 6
5. Maverick Vinales (Aprilia) 5
6. Aleix Espargaro (Aprilia) 4
7. Miguel Oliveira (RNF) 3
8. Johann Zarco (Pramac Racing) 2
9. Alex Marquez (Gresini) 1