You can never count Lewis Hamilton out. The world champion was off the pace all weekend - two tenths off the best time in Practice One, seven tenths off in P2, and eighth tenths off in P3. But for qualifying, the ever-intuitive Hamilton changed his driving style and pulled a final lap out of the bag to finish just 0.023s slower than Valtteri Bottas.
On Sunday, Hamilton eliminated another potential weakness - his starts - and aced the getaway to lead his team-mate into Turn One. From there, as we have seen so many times before, Hamilton would not be beaten, comfortably extending his advantage over his team-mate and the Ferraris.
"It doesn't matter if you're not perfect as long as you are making improvements, which I did," said Hamilton, who took his 75th career win, and the championship lead for the first time this season.
Rivals, beware: Hamilton is tough to catch from here…
Rating out of ten: 9
Fine margins are proving decisive in F1 2019, and it may have been just a lick of paint that cost Valtteri Bottas victory in China.
The Finn got wheel spin as he crossed the start-finish line immediately in front of his pole box, and that was enough to give his team-mate the chance to get ahead and control the race. Both Bottas and Mercedes boss Toto Wolff felt that had been the "deciding factor", with his car struggling to follow in Hamilton's dirty air which prevented him getting close enough to mount a challenge for the lead.
Bottas had looked the man to beat for much of the weekend. Recapturing the form he showed in Australia, he pipped Hamilton to pole despite not producing the lap he wanted.
Bottas may now have lost his world championship lead, but he appears a much stronger title contender than in previous years. "It's not a good feeling, so I'm coming back," he declared.
Rating out of ten: 8.5
After being dominated by his team-mate in Bahrain before spinning, it was certainly important for Sebastian Vettel to bounce back this weekend and, at the very least, beat Charles Leclerc.
Mission accomplished in that respect, although the world champion was aided by his team slightly. After being caught on the outside after a decent start, Vettel lost a place to Leclerc and was stuck behind the youngster until Lap 11.
Looking back, the team orders were harsh, but understandable. Vettel had showed he was the quicker Ferrari all weekend and had the best, although slim, chance of catching the Mercedes - though when he was let into clean air by Leclerc, he couldn't extract any more performance from his tyres or package.
What is more concerning than the team orders is Ferrari's gap to Mercedes, with Vettel, who battled impressively and cleanly with Max Verstappen, finishing 14 seconds behind Hamilton.
"I think we're not able to yet put it in the window," said Vettel. "Especially for myself, here and there. I'm not entirely happy yet compared to where we started off."
Rating out of ten: 7.5
Max Verstappen "drove the wheels" off his Red Bull, in the words of Christian Horner, and probably got the best result they could have hoped for with Mercedes and Ferrari holding the pace advantage.
He had one chance at a podium spot but couldn't quite make his late lunge on Vettel stick. "Every weekend is a bit of a guess what you are doing and how competitive you are as well," he said. "I had a good battle with Seb but even after that we just didn't have the pace really to fight."
And we await with interest Max's conduct on the next final runs in qualifying after being caught out in Shanghai.
Rating out of ten: 8.5
Regardless of whether you think Ferrari were right to implement team orders or not, it was a tricky weekend for Charles Leclerc as he failed to match the standards he set in Bahrain. He was behind Vettel in every session, and a scruffy final lap in Q3 saw him again lose out to his team-mate.
It looked like he had put that behind him as he made a surging start to Sunday's race. But then he was handed the role of sacrificial lamb as he fell away from the two Mercedes ahead. At the time, Ferrari probably had to make the call although it looks harsh in hindsight. Then Leclerc was left at the mercy of Verstappen as Ferrari left him long, before a late gearbox issue meant fifth was the best he could hope for.
Ferrari say they are prioritising Vettel in "50-50 situations" for the time being as he is their greater hope for the world championship. Yet ironically, Leclerc would be closer to Hamilton than Vettel had he not twice now had to cede to his team-mate. For now he is accepting the team game - how long that continues is a different matter.
Rating out of ten: 7
The good news for Pierre Gasly is that he has managed to get his Red Bull ahead of the midfield and he has a first F1 fastest lap to his name.
The bad news for Pierre Gasly is that he is still proving no match for Verstappen in the same car. While Verstappen was disrupting the Ferraris, Gasly ended up nine tenths behind his team-mate in qualifying - and a mammoth six tenths back in Q2 despite Verstappen running harder tyres.
Sunday ended up being a pretty lonely day for Gasly, with the late pit stop giving him the chance to get the extra fastest lap point as he came home where he started. The Frenchman says he is slowly gaining confidence in the RB15, but big inroads are needed to close that gap if he is to answer the questions over his seat which are beginning to emerge.
Rating out of ten: 6.5
The smile is back for Daniel Ricciardo as he enjoyed his best weekend at Renault so far and opened his points account for the season.
There may not have been a repeat of the spectacular, last-gasp overtakes of 12 months ago, but the Australian was solid throughout the weekend, out-qualifying team-mate Nico Hulkenberg and then getting his elbows out to fend off Sergio Perez's opening-lap charge.
With every lap, Ricciardo is getting more comfortable in his new car, and it's now about kick-starting his season. "It's a strong result and the best we can ask for," he said. "We want to push on from this over the next couple of races and keep working from here."
Rating out of ten: 8
This was the Sergio Perez we saw so often in the past as he produced the "perfect race" to come home eighth for Racing Point on a track that didn't suit their car.
It was all about the start for the Mexican as he overtook four cars on lap one, including a brilliant move around the outside of former team-mate Hulkenberg. He almost managed a similar move on the other Renault of Ricciardo but couldn't quite make it stick, while he managed to keep the wily Kimi Raikkonen behind him in the second half of the race.
Rating out of ten: 8.5
Kimi Raikkonen says he now regards Formula 1 as a hobby and he's clearly having fun with it as he found himself in the thick of the action on Sunday. The Finn rose from 13th to ninth as he made the most of a good strategy and showed his cunning to get the better of Kevin Magnussen in a wheel-to-wheel battle immediately after his pit stop.
Raikkonen felt he could even have chased down Perez and Ricciardo ahead but for losing tyre temperature, but he has single-handedly got Alfa Romeo joint-fourth in the constructors' championship while he remains best of the rest behind the 'Big Three' team drivers.
Rating out of ten: 8.5
Without question Alex Albon produced the drive of the day to convert a pit-lane start into another hard-earned F1 point. The London-born Thai driver is not the first and certainly won't be the last to be caught out at Shanghai's final corner, and the way he bounced back from his monster crash on Saturday showed he belongs in the sport.
Albon executed several fine overtakes to get himself into the top-10, and then showed his defensive skills in the closing laps to fend off Romain Grosjean while on significantly older tyres.
Rating out of ten: 9
Romain Grosjean recorded his first finish of the season and felt he could have snuck a point late on but for having to move aside for blue flags. He hounded Albon in the closing stages of the race, but ultimately came a cropper as Haas' poor pace over more than one lap saw him slip from 10th to 11th on Sunday.
Rating out of ten: 7
It's proving to be new team, same old story for Lance Stroll in F1 2019 as his run of Q1 eliminations continued. It's now seven in a row for the young Canadian, and the timesheet makes pretty grim reading - 0.144s away from a Q2 spot, further away than team-mate Perez was from a spot in Q3.
Stroll managed to convert P16 into P12 come race day, but that was helped by Daniil Kvyat hitting the two McLarens and Nico Hulkenberg's retirement, while he finished seven seconds behind the pit-lane starting Albon.
Rating out of ten: 6
For the first time this season Kevin Magnussen was comfortably out-performed by Grosjean. The Dane was unable to show his true qualifying abilities after Haas got their timings wrong in Q3, before he found himself going backwards quickly for the second race in a row as the American team's race pace disappeared. He ended seven seconds down the road from his team-mate in 13th, and was once again confused by Haas' lack of speed.
"We just need to sort out the race pace - it's the most important one to be good at," he bemoaned. "I don't really understand it at the moment, we all need to understand it."
Rating out of ten: 6
What is it with Spaniards and bad luck at McLaren? For the third race in a row, Carlos Sainz saw his weekend ruined by something he could do little about as he found himself as the meat in the Daniil Kvyat-Lando Norris sandwich on the opening lap.
Sainz put the blame firmly on Kvyat for the Turn Six "melee", and he felt but for that a points finish could have been possible, rather than the 14th position his MCL34 limped home in.
Otherwise, he easily outperformed Norris in the intra-team battle, out-qualifying his team-mate by nearly half a second to take a 2-1 lead in the head-to-head stats.
Rating out of ten: 6.5
Shanghai is not a very happy hunting ground for Antonio Giovinazzi. After his two crashes here two years ago, the Italian endured another horrid weekend, although there was little he could do on this occasion as unreliability hit his Alfa Romeo. After missing all of first practice after an engine installation issue, he was unable to take part in qualifying with another power unit problem before a slow pit-stop also affected his race.
He's being soundly beaten by team-mate Raikkonen at the moment.
Rating out of ten: 5.5
George Russell is having pretty lonely races in his debut Formula 1 season given Williams' issues, but he continues to lead the way for the team. He started off the back row of the grid for the first time and managed to out-qualify Robert Kubica again, despite labelling his final lap in Q1 as "rubbish".
Rating out of ten: 7
Another weekend of propping up the field for Robert Kubica. It's not proving to be a happy return to F1 for the Pole as he was out-qualified by Russell for the third consecutive race, while he finished a mammoth 16 seconds behind his team-mate, despite Russell making an extra stop just five laps from the end.
"The most exciting moment of the race for me was when I spun on the formation lap," Kubica said post-race. That pretty much sums things up.
Rating out of ten: 5.5
Did Not Finish
A first DNF for Lando Norris in Formula 1 rounded off a "more realistic" weekend for the British rookie and McLaren. The 19-year-old scraped out of Q1 on Saturday, before his race was effectively finished after six corners as he was clouted by Daniil Kvyat.
While the Toro Rosso driver picked up the penalty, Norris was perhaps not entirely innocent as it was his returning from off the track which contributed to the 'three into one' which simply couldn't go. It's now about how the teenager recovers from his first real setback.
Rating out of ten: 6
A return to the bad old days for Daniil Kvyat as he found himself sending carbon fibre everywhere in Shanghai. Toro Rosso clearly had good race pace, but he was unable to make the most of it after "skittling" both McLarens on the opening lap.
The drive-through penalty was perhaps a tad harsh given Norris' surge back onto track and previous first-lap incidents, but Kvyat paid the price for a poor start which had seen him slip from 11th to 15th in the opening corners.
And an engine penalty may not be far away for him either after Honda noticed an issue after first practice which led to a move onto a second power unit already.
Rating out of ten: 5.5
Another weekend, another Renault engine issue and another retirement for Nico Hulkenberg. The German only lasted 16 laps of Sunday's race before suffering a loss of power with an MGU-K problem. Hulkenberg was also out-qualified by Ricciardo for the first time in a fair fight, although with just 0.004s splitting the pair in Q3, it looks set to be a battle which swings back and forth all season.
Rating out of ten: 6
Comment below to get involved in the debate, but please adhere to our House Rules. If you wish to report any comment, simply click on the down arrow next to the offending comment and click 'Report'.