13 of the top 14 started on mediums, with Lewis Hamilton starting on hards in P8. Alonso, Magnussen and Ricciardo also started on the white wall tyre. Valtteri Bottas was on softs in P15.
Max Verstappen got a superb launch as Charles Leclerc got away poorly. Sainz passed his teammate on the run to turn 1. However, that turned around as Sergio Perez was out of control and almost clouted into his teammate as he had a massive lock-up.
Leclerc and Piastri slipped past Sainz on the exit of turn 1 as the Spaniard had to avoid the Mexican. Perez dropped to P5, with Norris in 6th. Hamilton, Hülkenberg and Tsunoda jumped Russell.
The Alpines of Esteban Ocon and Pierre Gasly had a fierce battle from turn 11 all the way down to turn 17 as the driver of car number 10 eventually came out on top despite it nearly ending in tears.
At the start of lap 2, Hülkenberg made a sensational pass on Hamilton into turn 1 as he used the extra grip of his mediums to take 7th. Behind them, George Russell overtook Yuki Tsunoda for P9.
Gasly had more fun with Fernando Alonso on the next lap as he passed the Spaniard around the outside into turn 11.
On lap 4, Oscar Piastri pounced into turn 17 as he sent it down the inside of Leclerc to take P2 from the Monegasque driver.
After plenty of pressure, Hamilton got back through on Nico Hülkenberg as he bravely went down the inside into turn 11 on lap 7 as the German went deep. However, the 36-year-old came back into turn 17 as Hamilton locked up and went deep.
Verstappen led Piastri, Leclerc, Sainz, Perez, Norris, Hülkenberg, Hamilton, Russell and Tsunoda at the start of lap 10.
Hamilton eventually got the move done cleanly on lap 10 into turn 11 has he sent it down the inside.
At the end of the lap, Alex Albon triggered stops as he boxed for hards from 14th.
A couple of laps later, Hülkenberg continued to go backwards as Russell overtook him for P8.
Of the early stoppers, Hülkenberg in P15 was ahead of Gasly, Stroll, Albon, Sargeant and Bottas.
On lap 15, Verstappen pushed on and set a fastest lap. However, Piastri and then Leclerc beat that as the gap between the top 3 stayed at 3.5s.
The first of the big runners came in at the end of lap 17 as Sergio Perez who was running in 5th boxed for hards after Lando Norris continued to hassle him. He came out in P10.
Leclerc came in two laps later and rejoined between the Mercedes drivers in 6th. Ferrari also delivered a 1.9s stop.
At turn 15, Max Verstappen had a snap of oversteer and hit the bollard at the chicane, with the Virtual Safety Car called on lap 23. Ocon, Alonso and Magnussen got the cheap stop and came out close to Nico Hülkenberg.
Despite the bollard getting cleared quickly and not having the chance to pit under the VSC, Verstappen boxed at the end of lap 23 and retained position on Charles Leclerc.
Ocon cleared Hülkenberg very quickly, with Alonso doing the same a couple of laps later. George Russell came out behind the Alpine but quickly cleared the 2021 Hungarian GP winner for 11th.
Just before the halfway point, Piastri and Sainz boxed for hards at the end of lap 27, and they rejoined behind Charles Leclerc.
A full Safety Car had to be thrown on lap 29 as Kevin Magnussen’s dreadful weekend continued as he crashed into Logan Sargeant. As they battled through turns 2 and 3, he tagged the right rear of the Williams and put him in the wall.
The Dane was handed a 10-second penalty for it. As Haas failed to serve the penalty correct when he pitted, another one came through.
Incredibly, the Safety Car picked up the wrong car as Max Verstappen was held behind it. This allowed race leader Lando Norris to pit and comfortably retain the lead as he pitted for the first time.
Norris led Verstappen, Leclerc, Piastri, Sainz, Perez, Tsunoda, Hamilton, Russell and Ocon the restart. Norris and Tsunoda benefited the most from the Safety Car.
Max Verstappen really went for it when the green flag was thrown into turn 1 but Norris covered him beautifully.
Into turn 11, Oscar Piastri and Lando Norris went at it as the Australian had no DRS. The McLaren driver went extremely aggressive to hold off Sainz as the Spaniard ended up off the track.
As Tsunoda defended into the same corner, Hamilton got him on the switchback and made a cracking move through turn 13 to take 7th.
The battle for P4 got even more intense on lap 39 as Sainz lunged it down the inside into turn 17 and took P4. However, contact was made as the Spaniard lost the rear and Piastri’s front wing was damaged. He came back into turn 1 but went deep and Sainz ran off into the distance. The initial incident will be investigated after the race.
Passed by Perez and Hamilton into turn 11, Piastri pitted at the end of lap 40 and fell to 19th. The Melbourne born driver came back through to finish P13 in the end.
As things calmed down, Norris comfortably eased away from Verstappen. Leclerc, Sainz, Perez, Hamilton, Tsunoda, Russell, Ocon and Alonso completed the top 10.
Outside the points, Nico Hülkenberg came charging through as he overtook Guanyu, Albon and Gasly to move into 11th.
Following a number of close attempts, Fernando Alonso breezed by Esteban Ocon into turn 11 with DRS on lap 48 to take P9 from his former teammate.
At turn 1 on lap 52, Lance Stroll moved into P13 as he overtook Albon off the track following a very tight wheel-to-wheel battle. It will also be investigated after the race.
The Williams driver ran out of tyres and had a monster lock-up into turn 11 and dropped to the back of the field.
Out front, Norris drove away to take his first Grand Prix win from Verstappen and Leclerc. His winning margin was 7.6s in the end.
Perez, Hamilton, Tsunoda, Russell, Alonso and Ocon rounded out the top 10.