Mark Webber won the Monaco GP for the second time in three years from Nico Rosberg and Fernando Alonso.
The Red Bull driver led from the start and controlled the race, measuring his pace to ensure he stayed ahead.
McLaren's Lewis Hamilton ran third in the early laps but lost out to Ferrari's Alonso and Red Bull's Sebastian Vettel on strategy.
McLaren's Jenson Button had a difficult race, running with backmarkers after a poor start and retiring after a spin.
The top six, completed by Ferrari's Felipe Massa, ran nose to tail in a tense last 10 laps, enlivened by intermittent light rain.
But all kept their cool on the tricky and tight street circuit and there were no changes before the flag.
Webber's victory makes this the first Formula 1 season in history to feature six different winners in the first six races.
"I'm feeling incredible," said the Australian. "It was an interesting race. The first phase of the race was strange. It was hard to get the soft prime tyre warmed up.
"Seb had his tyres in and wasn't wearing them so he was coming back into the picture. I didn't want him to get the magic 21 second gap and take the lead.
"It's an amazing day for the team, myself and really happy to have won here again."
The result moves Alonso into the world championship lead, three points ahead of Vettel and Webber, who is classified third on results count-back.
Hamilton drops from third to fourth, 13 points adrift of the Ferrari driver.
Webber shrugged off his reputation for poor starts by leading into the first corner, followed by Mercedes' Rosberg, Hamilton and Alonso.
Up front, Webber pulled out a lead of about two seconds and controlled that gap, with Rosberg a similar margin ahead of Hamilton.
Alonso initially dropped back a little from Hamilton but he was merely saving his tyres so he could use their grip closer to the pit stops.
The strategy paid off, as when Webber and Hamilton stopped on lap 29, two laps after Rosberg, Alonso stayed out for one more lap, on which he put in the two fastest sectors of the race to that point. That allowed him to emerge ahead of Hamilton.
"The target was to try to finish in front of Sebastian and Lewis as they are with us in the championship.
"At the start I had contact with Grosjean so thought there was damage, but the car was fine. We took Hamilton at the stop with a perfect time and a perfect stop again, so well done to the team."
The leaders' stops left Vettel, who had started ninth, in the lead.
The world champion had started on the more durable 'soft' tyres as opposed to the 'super-softs' on the drivers at the front of the grid.
And his race was made by leaping up to sixth place at the start as he took to the shorter escape road at the first corner to avoid an accident triggered by Lotus's Romain Grosjean spinning after he drove into Michael Schumacher's Mercedes.
Race stewards investigated Vettel's move, which was echoed by other drivers, but decided to take no action.
Once he was running at the front, Vettel pulled out enough of a lead to enable him to stop on lap 46 and rejoin ahead of Hamilton - he needed to chop across the McLaren on the way up the hill after the first corner Sainte Devote to consolidate his position.
From that point on, the top six stayed in close contact, nervously watching the skies for the threatening rain, and driving accordingly when it did start to fall.
Only four seconds separated Webber from Hamilton at the flag, with Massa only two more behind.
"Its been world class driving from all of them - on the trickiest circuit, I have not seen a mistake from any of these guys," said BBC co-commentator David Coulthard.
It was Red Bull's third Monaco win in three years - Vettel won in 2011 - and they became the first team to win twice in 2012.
but was demoted to sixth place for causing a crash in the previous race in Spain, sipped back to eighth on the first lap as a result of Grosjean pushing him against the wall at the start.
Schumacher was seventh after the pit stops, but progressively dropped back out of the points with an engine problem, retiring on lap 64, with 14 to go.
Schumacher's misfortune moved Toro Rosso's Jean-Eric Vergne into an impressive seventh, but he lost out with a late gamble to fit intermediate tyres.
That promoted the Force Indias of Paul Di Resta and Nico Hulkenberg, with Lotus's Kimi Raikkonen and Williams driver Bruno Senna completing the top 10.