Red Bull's Max Verstappen drove an outstanding race to win the Hungarian Grand Prix from 10th on the grid despite a spin costing the lead.
Verstappen passed title rival Charles Leclerc twice raising fresh questions about Ferrari's race operations.
Red Bull's pit strategy also vaulted Verstappen ahead of pole-sitter George Russell, who lost out on second place to team-mate Lewis Hamilton.
Carlos Sainz was fourth and Leclerc sixth as Ferrari's season imploded.
The result left Verstappen with an 80-point lead over Leclerc with nine races remaining, an advantage that looks unassailable given Red Bull's steadiness and Ferrari's flakiness.
A race gripping from start to finish, featuring divergent strategies, and the constant threat of rain on a grey, windy and cool day, provided a perfect symbol of the season so far.
Verstappen was imperious in moving through the field from his lowly grid position, caused by engine problems, Red Bull solid and aggressive on their strategy, and Ferrari uncertain as they converted second and third on the grid to having neither driver on the podium at the finish.
How did Verstappen go from 10th to victory?
Verstappen and Red Bull had used soft tyres for the start to gain ground in the first stint, and by the time the field had settled down after the first pit stops, he was in fourth place and within three seconds of Russell, Leclerc and Sainz, Ferrari having pitted the Spaniard four laps earlier than his team-mate in an apparent attempt to get Leclerc in front.
The Ferraris began to pressure Russell and Leclerc took the lead on lap 31, and Verstappen was still fourth when he pitted for a second time seven laps later for a second set of mediums.
Leclerc and Russell followed him in a lap later trying to cover him off, but Russell came out behind the Red Bull and Ferrari made an error by fitting the hard tyres, on which Leclerc found no grip.
Within two laps of his stop, Verstappen had passed Leclerc, only to spin at the penultimate corner on the next lap, handing the de facto lead back to the Ferrari, before catching and passing him again four laps after his spin.
Once in the lead, Verstappen never looked like losing control as the race became all about those behind him.
How did Hamilton take second?
Unlike Russell and Verstappen, who were both on softs, Hamilton ran medium tyres at the start, and ran a long middle stint, stopping 13 laps after the Dutchman and fitting soft tyres for a relatively short final stint.
It worked a treat. He rejoined in fifth place and soon began to reel in those in front. Leclerc pitted out of the way, abandoning the hard tyres Ferrari had fitted at his second stop, passing Sainz on lap 61 and then closing in on Russell, who was struggling with worn tyres, and passing him with five laps to go.
What are Ferrari doing?
Ferrari went into the race with an apparently open goal to make up ground on Verstappen but their day fell apart with an apparent series of strategy errors.
In the opening laps, Leclerc appeared quicker than Sainz, who was unable to pass Russell in the lead.
Sainz made his first pit stop a lap after after Russell but came out still behind him.
The team ran Leclerc for a further five laps to give him a tyre advantage over Russell in the lead and it worked perfectly. He closed in after his pit stop. They battled for five laps but eventually Leclerc passed the Mercedes around the outside of Turn One on lap 31.
That appeared to be the race won but Ferrari chose the hard tyres at his second pit stop.
He lacked grip when he rejoined in third place behind Sainz and Hamilton, and was soon passed by Verstappen.
His hard tyres never gave any grip but rather than try to hang on, he pitted for softs with 17 laps to go. Still he made no progress and ended up sixth, behind Red Bull's Sergio Perez.
Sainz ran a long middle stint like Hamilton and was ahead of the Mercedes until his stop on lap 47.
And when Hamilton made his stop four laps later, he caught and passed the Ferrari within 10 laps, relegating Sainz off the podium on a troubled day for Maranello.
McLaren's Lando Norris drove a solid race to seventh, beating the Alpines of Fernando Alonso and Esteban Ocon, who did a one-stop strategy using the hard tyre for their second stint.
Sebastian Vettel took the final point for Aston Martin on the weekend he announced he will retire at the end of the season.
- Why is football shirt collecting on the rise? Find out what's behind the popularity of these 'bits of polyester'
- How do the Lionesses relax between matches? Pop in for a visit to England's Euro 2022 base camp