Sebastian Vettel snatched a last-gasp Chinese Grand Prix pole position from Ferrari team-mate Kimi Raikkonen as Lewis Hamilton struggled.
Raikkonen was the quicker Ferrari going into the final runs but a scrappy final sector and a superb one from Vettel gave the German pole by 0.087 seconds.
Mercedes lacked performance - Hamilton was 0.58secs off pole and fourth behind team-mate Valtteri Bottas.
Hamilton must now try to stop Vettel gaining more ground in the title race.
Vettel saves best until last
Raikkonen had looked set for his first pole position since Monaco last year.
The Finn was 0.161secs ahead of Vettel on the first runs in the final session of qualifying, and set fastest sector times in both the first two parts of the lap.
But he failed to improve in the last few corners, and that gave Vettel the opportunity to steal pole and put himself in a strong position for a third consecutive race win that would give him a stranglehold on the championship battle.
What happened to Mercedes?
Hamilton warned on arrival in China that Ferrari would be hard to beat, saying they had an engine power advantage that could prove difficult to overturn on the track with the longest straight in F1.
Vettel was indeed fastest through two of the three speed traps, but it was in the corners where Mercedes were found lacking.
Bottas admitted Mercedes simply could not find the grip Ferrari did, and the silver cars appeared to be struggling to generate the correct tyre temperatures in the cool conditions in Shanghai.
They will be hoping the warmer conditions predicted for the race, in addition to the fact the ultra-soft tyres used in qualifying will likely not be seen - because all four top cars will start on the 'soft' after using them to set their fastest times in Q2, could turn the race towards them.
Red Bull rescue it after another setback
Red Bull were strong on the race runs in Friday practice but were unable to compete for one-lap pace.
Max Verstappen was fifth, 0.701secs off pole and 0.152secs quicker than team-mate Daniel Ricciardo.
It was a good effort by the Australian, though, and particularly his team after he suffered a major engine failure in the closing minutes of final practice, which mean he missed his qualifying simulation run.
That meant Red Bull had a race against time to get the car ready for qualifying and Ricciardo had only one lap in the first session to progress into Q2.
In the circumstances, to be faster than Verstappen in the second session and not far behind in the final shoot-out was a decent performance.
Another emergency debrief for McLaren?
Renault's Nico Hulkenberg was seventh, ahead of Force India's Sergio Perez, the second Renault of Carlos Sainz and Romain Grosjean's Haas, the Frenchman's team-mate Kevin Magnussen surprisingly missing out on Q3 and taking 11th despite continuing his strong start to the season until it mattered.
McLaren ended up down in 13th and 14th, Fernando Alonso ahead of Stoffel Vandoorne as usual, and were again lacking pace. The positions are the same as they achieved in Bahrain last weekend, which at the time prompted what the team referred to as an "emergency debrief" to divine what had gone wrong.
'Ferrari turned it up'
"Difficult day," said Hamilton afterwards. "Today just went away from us, Ferrari upped their pace throughout the weekend, probably not showing their true pace yesterday.
"The car doesn't feel much different so I think they have just turned it up. Tomorrow is a completely different day, it is going to be hot tomorrow so it is going to be interesting to see how it works out for us - we have not experienced that temperature so far this weekend."
"They are rapid at the moment, that is a challenge but we will give it everything we've got."
Vettel said: "I was happy with the whole lap, not just the last sector. The lap was amazing, it just kept getting better.
"The first lap I made a few mistakes, lost the rear in Turn Three and again in Turn Six. I was beating myself up but I knew if I had a better lap I could do it."