McLaren played the team order game to give Lando Norris the Sprint victory ahead of Oscar Piastri while a late VSC scuppered Max Verstappen's chances of also passing the Aussie.
The two points difference has reduced Verstappen's lead to 45 points in the race for the World title.
The McLaren team-mates lined up 1-2 for the 24-lap Sprint ahead of Charles Leclerc and Max Verstappen with three cars – Fernando Alonso, Lance Stroll and Zhou Guanyu – starting from the pit lane.
Lando Norris made a good start but Piastri defended the inside line and led into Turn 1 ahead of his team-mate, Leclerc, Verstappen, Carlos Sainz and George Russell. Oliver Bearman and Lewis Hamilton were the big losers, down to 12th and 14th respectively.
With their scoop rear wing in play, the McLarens pulled away from Leclerc who was defending against Verstappen. "Take your time Max, you know the game," was the warning from Gianpiero Lambiase to Verstappen.
Running behind Piastri, Norris told McLaren: "I'm not sure what I'm doing here. I thought we spoke about this."
A small mistake from Norris allowed Leclerc to close to within DRS range, the Ferrari driver bringing Verstappen with him as they dropped Sainz.
Further back Pierre Gasly was hassling Russell for sixth place, Bearman was sitting on Nico Hulkenberg's rear wing with Sergio Perez on his as the Red Bull driver tried to work his way into the points with the Haas team-mates and Liam Lawson between him and a point. Bearman overtook Hulkenberg for ninth, Perez also muscling his way through.
Lap 10 Piastri received the message from McLaren, not to let Norris pass but to "give Lando DRS". Piastri was urged by McLaren to up his pace but keep his team-mate with him.
As Verstappen harassed Leclerc for third place, Perez overtook Bearman before taking the final points-paying position off his 2025 Red Bull rival, Lawson. Lawson immediately fought back, retaking eighth as Perez struggled with his tyres.
Lap 16, McLaren told Norris: "With the gap to Leclerc at the moment we're happy to hold the positions until the last lap." Two laps later Piastri was told that if Norris attacked, he shouldn't make it difficult for his team-mate.
Verstappen added to the McLaren conundrum a lap later as he overtook Leclerc for third place to run behind the McLarens. And almost immediately began to close in on Norris, the gap 1.4s. "Let's chase them down!"
As Verstappen chased down Norris, Russell pulled away from Gasly, Perez overtook Lawson, Hamilton made his way up to 12th place by overtaking the sliding Franco Colapinto. He then passed Bearman as the Haas driver's team-mate Hulkenberg retired with an exhaust issue.
With Hulkenberg stopped on the side of the track and yellow flags, McLaren quickly made the call for Piastri to move over for Norris given the possibility of a Safety Car. The Aussie slowed, Norris took the lead and shortly after the VSC came out.
Lap 24, the final lap, the VSC lifted, Verstappen attacked Piastri but the Aussie held his line. Ahead of them, Norris raced to the victory with Piastri making it a McLaren 1-2 ahead of Verstappen.
Leclerc, Sainz, Russel, Gasly and Perez completed the points as the top eight.