Lewis Hamilton delivered a crushing performance to win in China as Ferrari used team orders to help Sebastian Vettel finish on the podium.
Valtteri Bottas followed team-mate Hamilton home for Mercedes to secure their third one-two finish in as many grands prix.
But Hamilton's superb lights-to-flag victory was overshadowed by the intra-team politics which threatens to destabilise Ferrari's season.
Chinese Grand Prix podium
1st - Lewis Hamilton
2nd - Valtteri Bottas
3rd - Sebastian Vettel
Hamilton roared off the start line in Shanghai to dash past pole-sitter Bottas to the opening bend.
From there, he ruled the race to secure his second win in succession and assume the championship lead for the first time this season. He is six points clear of Bottas.
Vettel crossed the line third, with Max Verstappen fourth for Red Bull, and Ferrari's Charles Leclerc fifth.
The young Ferrari driver will have every right to feel frustrated.
Heading into Formula One's 1,000th race, the question was whether Vettel would remain as Ferrari's number one following Leclerc's strong display last time out in Bahrain.
On lap 11, Ferrari delivered their answer.
Leclerc had got ahead of Vettel at the first turn, but with Vettel less than a second behind the young Monegasque, and claiming he would be able to match leader Hamilton's times, Ferrari instructed Leclerc to move out of his team-mate's way.
Unlike in previous regimes at Ferrari, Leclerc made his feelings clear. "But I'm pulling away [from Vettel]," he protested, before reluctantly moving aside.
Vettel had clear air to catch the Mercedes duo, but failed to make any impression on the leaders.
Indeed, Leclerc remained on the rear wing of his four-time world champion team-mate with Verstappen closing in on both red cars.
"I am losing quite a lot of time," said Leclerc. "I don't know if you want to know or not."
Vettel was given the hurry-up message. Verstappen was then the first of the leading five to stop for fresh rubber.
For the second time, Ferrari reacted by favouring Vettel. He was called in on the following lap for new tyres, and emerged just ahead of the Red Bull car.
The gung-ho Verstappen then launched a move down the inside of Vettel at the penultimate corner - the scene of their collision here last year - but Vettel got the better exit and just about kept Verstappen at bay.
All the while, Leclerc was losing valuable speed on ageing tyres. He pitted four laps later than his team-mate, but by this time he was in no-man's land, and he rejoined the circuit an eye-watering 11 seconds behind Vettel and Verstappen in fifth.
Leclerc was promoted to second when the leaders stopped again, and Ferrari may have hoped that he would get to the end. Yet after a brave, but fruitless defence against Bottas, before Vettel sailed by, Ferrari pulled him in with 14 laps to run.
Out front, a peerless Hamilton was never challenged, and on a weekend dominated by numbers, the five-time champion became the second driver in history after Michael Schumacher to lead 4,000 laps.
It was his sixth win here and 75th in all. Vettel failed to trouble Bottas, finishing seven seconds behind the Finn.
Three races in, Hamilton and Mercedes remain the class of the field.
Elsewhere, British teenager Lando Norris retired after a dramatic first-lap collision. Norris was an unwitting bystander as Daniil Kvyat sent him airborne, and temporarily onto two wheels, after he first barged into Carlos Sainz's McLaren.
The Russian was penalised with a drive-through penalty. Norris stopped for repairs, and limped on, but was unable to make it to the chequered flag.