Lewis Hamilton grabbed pole position for the Monaco Grand Prix from Mercedes Formula 1 team-mate Valtteri Bottas in the final seconds of qualifying, while Charles Leclerc went out in Q1.
Bottas had an advantage of 0.231 seconds over Hamilton after the first runs in Q3 but was unable to improve on his second set of Pirelli softs.
Hamilton then put in a lap of 1m10.166s to outpace Bottas by 0.086s, with the championship leader's stunning pace through the first sector crucial to his advantage.
Bottas held on to second place as Red Bull driver Max Verstappen was also unable to improve and stayed in third place, 0.475s down.
Ferrari ended up fourth with Sebastian Vettel and Leclerc in 16th after a torrid session.
Leclerc completed just one Q1 run and ultimately failed to make the top 15 by 0.052s despite being only 0.715s off the pace in the session.
He was not sent back out at the end even though he had picked up a flatspot on his soft Pirellis during his first run as Ferrari felt he was safe.
Leclerc also initially missed the weighbridge when he returned after his run, although he was pushed back by the Ferrari team before entering the garage.
He confirmed he had enough fuel and time to have completed a second run even after this delay.
While Leclerc sat in the garage, a string of drivers made late improvements and shuffled him down the order - culminating in one Ferrari being effectively knocked out by the other.
Vettel had not set a strong enough time on his first run having abandoned the final quick lap on his first run after kissing the wall at the exit of the first left/right at Swimming Pool.
This meant he was among those at risk of elimination before improving on the only fast lap he had time for on his second set of tyres. That lap put Vettel to first in Q1, but sealed Leclerc's elimination.
In Q3, Vettel made a promising start to his last lap and looked set to improve, but kissed the wall at the exit of the Tabac right-hander and had to settle for fourth based on his first-run time.
Red Bull driver Pierre Gasly was fifth, 0.875s off the pace, but faces a post-session investigation for impeding Haas driver Romain Grosjean during Q2.
Kevin Magnussen was best of the rest in sixth place and was the only driver outside the top three teams to still have enough tyres for two runs using fresh Pirelli softs in Q3.
Having taken sixth place on his first run, he then briefly lost it to Renault driver Daniel Ricciardo, before reclaiming it on the second run.
Toro Rosso driver Daniil Kvyat was eighth fastest, behind last year's winner Ricciardo and a tenth and a half quicker than McLaren driver Carlos Sainz Jr.
Kvyat's team-mate Alex Albon made Q3 for the first time in his F1 career, but had to settle for 10th and 1.487s off the pace.
Renault driver Nico Hulkenberg was bumped out of the top 10 in the final moments of Q2 when Magnussen, who had struggled on his first run after locking up and clipping the inside wall at Mirabeau, improved.
Lando Norris was half a tenth behind Hulkenberg in 12th place and 0.3s quicker than Grosjean - who complained about traffic over the radio at the end of the session when impeded by Gasly.
Alfa Romeo pairing Kimi Raikkonen and Antonio Giovinazzi were 14th and 15th respectively, with just 0.070s separating them.
Behind Leclerc, Racing Point duo Sergio Perez and Lance Stroll were 17th and 18th but were six tenths of a second apart.
George Russell prevailed in the battle of the Williams drivers to take 19th place, with Robert Kubica bringing up the rear after lapping 0.274s slower.
Provisional starting grid
|3||Max Verstappen||Red Bull/Honda||1m10.641s||0.475s|
|7||Daniil Kvyat||Toro Rosso/Honda||1m11.271s||1.105s|
|8||Pierre Gasly||Red Bull/Honda||1m11.041s||0.875s|
|9||Carlos Sainz Jr.||McLaren/Renault||1m11.417s||1.251s|
|10||Alexander Albon||Toro Rosso/Honda||1m11.653s||1.487s|
|14||Kimi Raikkonen||Alfa Romeo/Ferrari||1m12.115s||-|
|16||Sergio Perez||Racing Point/Mercedes||1m12.233s||-|
|17||Lance Stroll||Racing Point/Mercedes||1m12.846s||-|
|18||Antonio Giovinazzi||Alfa Romeo/Ferrari||1m12.185s||-|