Piastri headed McLaren teammate Lando Norris to the flag, the Brit having battled brake issues in the latter stages.
It mattered little as the papaya squad had built a comfortable advantage, allowing Norris to remain clear of George Russell as the Mercedes driver rounded out the podium.
Jack Doohan had a combative race, picking up a 10-second penalty for a clash with Isack Hadjar, and was classified 16th.
That was one place behind Red Bull’s Liam Lawson who was 15th while Max Verstappen was fourth in the sister car.
As the lights went out, Russell got the better jump but was squeezed towards the pit wall by Piastri, who held on to top spot as they entered Turn 1.
That opened the door for Norris to attack Russell around the outside, passing the Mercedes into Turn 2 to make for a McLaren one-two.
Russell didn’t give up but was unable to regain his lost position and briefly came under fire from Hamilton.
Behind them, Charles Leclerc ran fifth at the end of the opening lap from Max Verstappen, Kimi Antonelli, Yuki Tsunoda, Isack Hadjar, and Esteban Ocon in the top 10.
Further back, the two Saubers had drama as they dropped to the rear of the pack, Gabriel Bortoleto boxing at the end of the opening lap following a Lap 1 spin.
That left Jack Doohan 15th across the line, soon moving by Oliver Bearman for 16th with Liam Lawson 18th from the pit lane.
In the opening exchanges, Leclerc picked up damage to his front wing after wiping it across Hamilton’s right-rear wheel as they compressed into Turn 2.
It cost the Monegasque in the region of 20 or 30 points of downforce according to the Ferrari pit wall, though he was comfortable to remain out until his first stop.
The field had started on the medium tyre with the exception of Lance Stroll, who was on the hards and ran 14th, and Liam Lawson who’d started from the pit lane.
One place ahead of the Aston Martin driver was Pierre Gasly, who reported to the Alpine pit wall that Fernando Alonso in 12th had a brake fire.
The Spaniard soon slowed with smoke from the back of his Aston Martin, confirming over the radio that he had no brakes to become the race’s first retirement.
Tyre management quickly saw the race settle down, Piastri holding a 1.4s advantage over teammate Norris after 10 laps.
Russell ran third, around two seconds back from Norris, with Hamilton fourth from Leclerc, Verstappen, Antonelli, Tsunoda, Hadjar, and Ocon.
With Alonso’s retirement, Lawson had improved to 17th, the Kiwi running 0.7s back from Doohan who in turn was in a DRS train behind Bearman, the Haas driver having regained the place lost to the Australian earlier in the race.
The first round of stops started on Lap 11 with Gasly taking service while at the front of the race radio chatter centred on whether the opening stint could be extended to make for a one-stop race.
As those in the midfield pitted, Lawson rose to 13th place after 12 laps.
Hamilton and Verstappen were the first of the front runners in the lane, both taking on a set of hard compound tyres.
Verstappen had fallen off the back of the Ferraris that had been ahead of him, more than five seconds away from the red machines after his opening stint.
A lap later, as he completed Lap 14, Piastri stopped to hand the lead to teammate Norris.
Leclerc had also remained on track, as had Alex Albon who sat third.
McLaren called Norris in next time around, as did Ferrari with Leclerc to leave Albon in the lead.
Norris fed out side-by-side with Russell, losing out to the Mercedes driver around the long Turn 1 as Norris found himself boxed in behind Stroll’s Aston Martin.
As they started Lap 18, the McLaren driver regained the place from Russell with an aggressive move into Turn 1.
Russell had gone defensive but Norris refused to relent and seized the place.
As that happened, Piastri moved back into the race lead over Albon, Norris running an effective second some 3.1s back from his teammate.
Having climbed to 10th in his opening stint, Lawson finally stopped after 18 laps to rejoin 18th on a set of mediums.
Former race leader Albon finally boxed after 20 laps to restore the order at the front of the race, with Piastri leading Norris from Russell, Hamilton, and Leclerc.
Struggling for pace, Hamilton was instructed to swap positions with Leclerc – who had not taken a new front wing at his stop – at the Turn 14 hairpin.
The switch didn’t come immediately, and instead, Leclerc moved beyond at Turn 1 as they began Lap 21.
Stroll and Bearman were the only two drivers yet to stop, the pair running seventh and eighth respectively as the race approached mid-distance.
Released from behind Hamilton, Leclerc began to reel in Russell in third, within DRS range as they completed Lap 25.
In second, Norris was instructed to push on.
He’d fallen more than four-seconds back from Piastri but soon improved his pace to reset the fastest lap and close to 3.2s of the race lead.
That opened the margin to Russell to 2.8s, McLaren looking to extend that to cover off the undercut ahead of the second range of pit stops – Norris having lost out to the undercut at his first stop.
To create space, Piastri was told to get a wriggle on so Norris didn’t suffer in his dirty air, as the team targeted a four-second advantage over Russell.
Norris achieved that at the end of Lap 31 as the McLaren pair streaked clear of the chasing Mercedes.
Instruction then changed as the papaya pit wall realised Russell was targeting a single-stop race.
A second stop for either Norris or Piastri would have plummeted them down the order, and while they’d enjoy a tyre and pace advantage, the high degradation experienced on the resurfaced Shanghai circuit made that a high-risk strategy.
Instead, the pace out front slowed marginally, Piastri holding station around three seconds ahead of Norris, the pair inching away from Mercedes at around a tenth per lap.
Not on a one-stop strategy, Hamilton took service for a second time after 37 laps.
He fell behind Verstappen in the process to rejoin sixth, five seconds back from the Red Bull but with almost 20 laps remaining and a strong pace advantage.
Verstappen had been anonymous throughout the race, not a factor at the very front but clear of the midfield pack with his RB21 proving to be, at best, only the fourth-fastest car behind the McLaren, Mercedes, and Ferrari.
Lawson did nothing to discredit that, running 17th after taking his second stop and lapping at a similar pace to Verstappen, and on par with Hadjar who sat 16th after 40 laps.
A battle between Doohan and Hadjar saw the Alpine driver skate up the inside at Turn 14, a move that caught the attention of the stewards for forcing another driver off the track.
Just seconds later, Tsunoda suffered a front wing failure, the top-right flap failing as he approached Turn 1, forcing him to slow and pit at the end of the lap to hand Doohan 14th place.
Doohan was subsequently handed a 10-second penalty for his pass on Hadjar.
Meanwhile, Norris began battling with a brake pedal issue.
The Brit had complained of a long pedal, a concern the pit wall acknowledged but assured him the braking force remained unchanged.
That developed into an advisory that the rear braking was beginning to fail but that front pressure would remain but to manage the problem to the flag with “no heavy braking.”
In the final laps, Verstappen came alive as he caught and passed Leclerc to take fourth.
He did so with a bold move around the outside of the tight Turn 3.
Behind Leclerc, Hamilton had made no impact following his second stop to leave the Scuderia running fifth and sixth.
Verstappen’s move on the lead Ferrari was the last real action of the race aside from Norris’ nervy run to the chequered flag.
His brake situation had become “critical” according to the team.
He maintained a comfortable 4.8s advantage over Russell at the beginning of the final lap having slowed his pace dramatically.
Ahead, Piastri won with ease with Norris holding on to second by 1.3s over Russell in third.
Verstappen claimed fourth over Leclerc, Hamilton, Ocon, Antonelli, Albon, and Bearman to round out the top 10.
Doohan saw the flag in 14th, but his penalty dropped him to 16th, one place behind Lawson.
Pos | Num | Driver | Team | Laps/Diff |
1 | 81 | Oscar Piastri | McLaren – Mercedes | 56 Laps |
2 | 4 | Lando Norris | McLaren – Mercedes | +9.748s |
3 | 63 | George Russell | Mercedes | +11.097s |
4 | 1 | Max Verstappen | Red Bull – Honda | +16.656s |
5 | 16 | Charles Leclerc | Ferrari | +23.211s |
6 | 44 | Lewis Hamilton | Ferrari | +25.381s |
7 | 31 | Esteban Ocon | Haas – Ferrari | +49.969s |
8 | 12 | Kimi Antonelli | Mercedes | +53.748s |
9 | 23 | Alex Albon | Williams – Mercedes | +56.321s |
10 | 87 | Oliver Bearman | Haas – Ferrari | +61.303s |
11 | 10 | Pierre Gasly | Alpine – Renault | +67.195s |
12 | 18 | Lance Stroll | Aston Martin – Mercedes | +70.204s |
13 | 55 | Carlos Sainz | Williams – Mercedes | +76.387s |
14 | 6 | Isack Hadjar | Racing Bulls – Honda | +78.875s |
15 | 30 | Liam Lawson | Red Bull – Honda | +81.147s |
16 | 7 | Jack Doohan | Alpine – Renault | +88.401s |
17 | 5 | Gabriel Bortoleto | Sauber – Ferrari | +1L |
18 | 27 | Nico Hulkenberg | Sauber – Ferrari | +1L |
19 | 22 | Yuki Tsunoda | Racing Bulls – Honda | +1L |
14 | Fernando Alonso | Aston Martin – Mercedes | +52L |