Maverick Vinales captured his second consecutive Moto3 pole in emphatic fashion at Catalunya, ending more than a quarter of a second clear of the field.
Zulfahmi Khairuddin sealed his first front-row start in second, with Le Mans winner Louis Rossi in third.
Vinales (Avintia FTR-Honda) was already leading the timesheets with 10 minutes to go when he shaved nine tenths of a second off his best, dropping down to a 1m52.160s - at the time putting him more than six tenths of a second clear of the field.
Both Khairuddin and Rossi were able to close that deficit slightly, but neither looked truly capable of deposing Vinales.
Championship leader Sandro Cortese (Ajo KTM) bounced back from a hand injury suffered in a fall in FP3 to qualify fourth, ahead of Monlau Honda's Miguel Oliveira, who fell with one minute of the session remaining.
The Portuguese had been part of a four-bike draft but ran into the back of Alexis Masbou and fell, taking out Brad Binder (RW Kalex-KTM) in the process.
Neither he nor Masbou were able to improve their times as a result, but they had done enough to seal fifth and seventh - Luis Salom (RW Kalex-KTM) separating them.
Hector Faubel (Aspar Kalex-KTM), Niccolo Antonelli (Gresini Honda) and Efren Vazquez (Laglisse Honda) rounded out the top 10.
Pos Rider Team/Bike Time Gap 1. Maverick Vinales Avintia FTR-Honda 1m52.160s 2. Zulfahmi Khairuddin Ajo KTM 1m52.428s + 0.268s 3. Louis Rossi Germany FTR-Honda 1m52.603s + 0.443s 4. Sandro Cortese Ajo KTM 1m52.629s + 0.469s 5. Miguel Oliveira Monlau Suter-Honda 1m52.757s + 0.597s 6. Luis Salom RW Kalex-KTM 1m52.833s + 0.673s 7. Alexis Masbou Caretta Honda 1m52.950s + 0.790s 8. Efren Vazquez Laglisse FTR-Honda 1m52.951s + 0.791s 9. Hector Faubel Aspar Kalex-KTM 1m53.033s + 0.873s 10. Niccolo Antonelli Gresini FTR-Honda 1m53.131s + 0.971s 11. Alex Marquez Monlau Suter-Honda 1m53.140s + 0.980s 12. Jakub Kornfeil Ongetta FTR-Honda 1m53.145s + 0.985s 13. Romano Fenati Italia FMI FTR-Honda 1m53.207s + 1.047s 14. Danny Kent Ajo KTM 1m53.346s + 1.186s 15. John McPhee KRP Honda 1m53.402s + 1.242s 16. Alex Rins Monlau Suter-Honda 1m53.478s + 1.318s 17. Alberto Moncayo Aspar Kalex-KTM 1m53.516s + 1.356s 18. Alessandro Tonucci Italia FMI FTR-Honda 1m53.634s + 1.474s 19. Arthur Sissis Ajo KTM 1m53.663s + 1.503s 20. Jack Miller Caretta Honda 1m53.717s + 1.557s 21. Alan Techer Technomag-CIP TSR-Honda 1m53.972s + 1.812s 22. Brad Binder RW Kalex-KTM 1m54.004s + 1.844s 23. Ivan Moreno Laglisse FTR-Honda 1m54.059s + 1.899s 24. Niklas Ajo TT Motion KTM 1m54.112s + 1.952s 25. Jasper Iwema FGR-Honda 1m54.281s + 2.121s 26. Simone Grotzkyj Ambrogio Suter-Honda 1m54.528s + 2.368s 27. Isaac Vinales Ongetta FTR-Honda 1m54.657s + 2.497s 28. Adrian Martin Laglisse FTR-Honda 1m54.697s + 2.537s 29. Jonas Folger Ioda 1m54.776s + 2.616s 30. Marcel Schrotter Mahindra 1m54.829s + 2.669s 31. Danny Webb Mahindra 1m55.168s + 3.008s 32. Giulian Pedone Ambrogio Suter-Honda 1m55.695s + 3.535s 33. Kenta Fujii Technomag-CIP TSR-Honda 1m55.805s + 3.645s 34. Luigi Morciano Ioda Italia 1m56.178s + 4.018s