World champion Jenson Button calmly steered his way through the chaos of a wet Chinese Grand Prix for his second win of the season on Sunday, leading Lewis Hamilton to a McLaren one-two.
Hamilton, who carved his way through the field from 12th on lap four to finish 1.530 seconds behind his compatriot, may yet pay the penalty for his aggressive drive, however, after a post-race probe into a pit lane clash with Sebastian Vettel.
German Nico Rosberg got his second successive third place for Mercedes behind the two Britons with Spain's Fernando Alonso, who earned a drive-through penalty for a jump start, finishing fourth for Ferrari.
Pole-sitter Vettel, who won the last race in Malaysia and here last year for Red Bull, could only manage sixth behind Robert Kubica's Renault, leaving the Shanghai race still without a repeat winner after seven years.
Renault's Vitaly Petrov passed both Michael Schumacher of Mercedes and the Red Bull of Mark Webber on the last few laps to take an impressive seventh place in the Russian's first completed Formula One race.
Alonso's premature start, a safety car for a three-car pile up on the first corner, heavy rain and another safety car later in the race contributed to an entertaining but chaotic race.
Button, who also won the second race of the season in Australia and now has nine grands prix win in his career, goes top of the drivers' standings with 60 points, 10 clear of Rosberg with Hamilton and Alonso third and a point further back.