Daniel Ricciardo claimed his first Formula 1 win for Red Bull as the Mercedes hit trouble in the Canadian Grand Prix.
The Australian passed an ailing Nico Rosberg with just three laps to go with the German taking second, Sebastian Vettel was third following a high-speed crash between Felipe Massa and Sergio Perez.
The start was business as usual for 2014 as Rosberg and team-mate Lewis Hamilton battled away from the front row.
Despite a better launch for the Briton, Rosberg's inside line was just enough as he forced Hamilton wide allowing Vettel upto second.
Everyone made it through the tight opening corners but there would be a big crash for Jules Bianchi, as the Frenchman was hit by his Marussia teammate Max Chilton, entering turn three spinning his car and hitting the wall.
The incident also ended Chilton's run of 26 consecutive finishes since making his debut in F1 at the beginning of last year.
A prolonged Safety Car period was needed to clear the debris and oil left on the track but when the race resumed the focus switched back to the front where Hamilton was keen to pass Vettel.
Despite having much higher top speed in his Mercedes, it wasn't until the DRS became active that Lewis made the easy move most expected on the inferior powered Red Bull and the race we expected between the two Silver Arrows was on.
Pit stops came before lap 20 and for Ricciardo, who pitted first, it was all about trying to get track position as his slow top speed meant he couldn't pass the Williams in front.
That started a chain reaction ahead of him which saw Massa drop behind but also saw the one-stopping Force India's move ahead into third and fourth behind the two Mercedes.
At the front Hamilton was quicker than Rosberg ahead and looked to make a move, however, the German braked too late and shot across the final chicane moving him above the one second margin required to activate DRS.
The stewards deemed Rosberg's short cut within the rules and when Mercedes stopped for the first time the German resumed in front.
Once again Red Bull's lack of top speed meant Vettel, who had been close to Mercedes before the stop, was stuck behind the Mercedes powered Force India's and this allowed Valtteri Bottas to close up.
Perez was the first Force India to pit at half distance which triggered Williams to also pit Bottas, who had been unable to pass Vettel, but this worked out badly as when both Red Bull's stopped, Ricciardo, who had also caught up, emerged ahead of them both.
Then came the turning point as both Mercedes hit power problems, with their top speed dramatically reduced they became the slowest cars on the track though they had built up a nearly half a minute gap to Nico Hulkenberg, who had started on the soft tyres, and was running in third.
Still struggling, the two Mercedes pitted for the second time but Hamilton emerged in front, then, as the team tried to help fix the energy recovery issues, the Briton's rear brakes failed and he was forced to retire.
It appeared Rosberg may suffer a similar fate, however, after seeing Hamilton retire, he simply relied on the power from the V6 as both the turbo and KERS failed.
Felipe Massa looked as if he may become the candidate to benefit from Mercedes' troubles but a pit-stop dropped him back and Perez was now second with Ricciardo and Vettel right behind him.
The three cars quickly caught Rosberg but the pace of the Mercedes in the first two sectors just kept him out of DRS range so he wasn't under attack along the straights.
The pattern would continue with the top four covered by a few seconds as Massa began to make up ground following his second stop.
He moved clear of team-mate Bottas and Hulkenberg on one lap and looked potential favourite to win entering the final laps despite being fifth.
But the Williams didn't have the traction out of the hairpin and Vettel was strong in his defence into the last chicane to stay ahead.
Perez's old tyres and an increasing brake problem saw Ricciardo get ever closer but still unable to overtake, finally with just five laps to go the Australian dived down the outside into turn one, just stayed on the track, and was into second place.
Now with the faster Red Bull behind Rosberg's lead was short-lived as Ricciardo caught and passed the Mercedes using DRS within two laps and would take his first win but not before a major incident behind.
As the battle for the final podium place heated up, Vettel made a move on Perez into the last chicane and Massa looked to follow the Red Bull through on the main straight but a slight deviation from Perez saw the pair collide approaching turn one sending both into the wall at high-speed, both are said to be fine.
That brought out a last lap Safety Car as Ricciardo crossed the line to win ahead of a relieved Rosberg with Vettel in third.
A late burst gave Jenson Button a surprise fourth for McLaren ahead of Hulkenberg, Alonso was quiet in sixth ahead of Bottas, Jean-Eric Vergne, Kevin Magnussen and Kimi Raikkonen was the last man to finish in tenth.
But the last man standing was Daniel Ricciardo whose trademark smile was the biggest yet on the podium taking Red Bull's first win of the year and the first non-Mercedes to win in 2014.
Rosberg was a big winner too as he moved 22 points ahead of Hamilton in the drivers' championship ahead of the next race which sees F1 return to Austria, for the first time in 11 years, and the refurbished Red Bull Ring in two weeks time.
Write for GiveMeSport! Sign-up to the GMS Writing Academy here: http://gms.to/1a2u3KU