Max Verstappen recovered from a shaky first day at his home race to take pole position in a Dutch Grand Prix qualifying marred by two flares being thrown onto the circuit.
The Red Bull driver set a lap time of a one minute, 10.342secs to head Ferrari's Charles Leclerc by just 0.021s, with Carlos Sainz also within a tenth of pole at Zandvoort.
Mercedes duo Lewis Hamilton and George Russell were denied the chance to improve after Sergio Perez spun at the final corner, bringing out yellow flags and dissuading any improvement.
But the session was overshadowed by a red flag at the start of Q2 for a flare being thrown onto the track, with acrid orange smoke bellowing across the surface on the run-up to the penultimate corner.
The fan responsible for the stoppage was identified and swiftly ejected from the premises, with a clampdown beginning to be enforced after scenes at the circuit last season and at the Austrian Grand Prix this term.
A second flare made its way onto the track at the pivotal moment of Q3 but thankfully rolled up against a barrier, with no interruption necessary.
The red flags in Q2 also allowed for marshals to clear the circuit of pigeons, which had bravely gathered at the apex of the high-speed turn seven.
Hamilton was on for a front-row start had he been able to finish his lap but was forced to settle for fourth, ahead of Perez, who rotated his RB18 after running wide onto the curb entering the 18-degree banked final corner.
Russell starts the race sixth ahead of McLaren's Lando Norris, who at one stage in Q2 looked like having an outside chance of challenging the top six. The Briton will visit the stewards over an unsafe release in Q1, though it is likely the team will be handed a fine.
Mick Schumacher somewhat silenced doubters with his F1 future seemingly hanging by a thread with his fourth Q3 appearance of the season, comfortably outperforming Haas team-mate Kevin Magnussen to qualify eight.
Yuki Tsunoda starts ninth for AlphaTauri ahead of the unfortunate Lance Stroll.
The Canadian was in sublime form to reach Q3 but was hit with a technical problem in the final session, leaving the Aston Martin driver 10th on the grid.
Alpine's suffer shock double elimination
When Q2 restarted following the disruption, the tightness of the midfield showed as both Alpine's missed out on the top 10.
Pierre Gasly will start 11th after missing out to team-mate Tsunoda by only 0.084s, with Esteban Ocon ahead of Fernando Alonso.
Zhou Guanyu out-qualified Alfa Romeo team-mate Valtteri Bottas to start 14th ahead of Alex Albon, who was the only driver to be hampered by the flare being thrown on track.
Ricciardo endures further woe
Daniel Ricciardo has at the focal point of attention in recent weeks as McLaren finally decided on his future with the team.
A no-score at Belgium during a difficult weekend for the outfit as a whole could be excused, but with hopes the announcement he would leave at the end of the season would have released the Ricciardo of old, the latest failure will feel deflating.
The Australian finished only 18th quickest, 0.255s adrift of Zhou's effort for 15th in Q1 and leaving a mountain to climb in the race around the twisting Zandvoort layout.
Ricciardo was joined in elimination by Bottas for Alfa Romeo, Magnussen for Haas and Sebastian Vettel, who threw away a spot in Q2 with a late error.
With the track improving significantly, the Aston Martin driver ran wide at the penultimate corner and took a trip through the gravel, leaving him 19th on the grid.
Nicholas Latifi will start from the back for Williams.