McLaren's Oscar Piastri celebrated his 50th Formula One race with a pole-to-flag win in Bahrain on Sunday that sent him second overall and three points behind championship leading teammate Lando Norris.
The Australian also became the season's first repeat winner in four races and ended reigning champions McLaren's long wait for victory at their Bahraini owners' home Sakhir circuit.
Norris finished third, after lining up sixth on the grid and then having to fight back from a five-second penalty for a jumped start under the floodlights.
Mercedes' George Russell held off his fellow Briton for second in a tense battle over the closing laps but faced a stewards' enquiry for allegedly using the drag reduction system outside the defined zone.
"It's been an incredible weekend starting with qualifying yesterday and finishing the job today in style is nice," said Piastri, who won by 15.499 seconds despite a safety car period wiping out his initial lead.
"It's very important given our owners. It's never been a track that's been kind to us, so it's nice to have our first win here."
Norris now has 77 points to Piastri's 74, with McLaren on 151 in the constructors' standings and Mercedes second on 93.
Ferrari's Charles Leclerc and Lewis Hamilton were fourth and fifth, with the Italian team's former boss Luca di Montezemolo the guest of honour waving the chequered flag.
Red Bull's four-times world champion Max Verstappen, who had been only a point behind Norris after winning in Japan last weekend, finished sixth with Pierre Gasly scoring Alpine's first points of the campaign in seventh.
Esteban Ocon, who crashed heavily in qualifying, redeemed himself with eighth for Haas and Yuki Tsunoda delivered Red Bull's first double points finish of the year in ninth.
The final point was secured for Haas by British rookie Oliver Bearman, who started last.