Ricciardo was an unlikely winner, having started a distant 10th on the grid and then being forced to make an unscheduled early pitstop to have blocked brakes air intakes cleared.

But the Australian was brought back into contention via a series of Safety Car periods as well as the misfortunes suffered by some of those ahead - including Red Bull team-mate Max Verstappen who was an early retirement due to mechanical failure for the second race in succession.

Things boiled over during one Safety Car period between title rivals Lewis Hamilton and Sebastian Vettel which resulted in a pitlane penalty for the latter.

But Hamilton was forced into the pits at almost the exact moment his Ferrari rival took his penalty, as the Mercedes had a loose headrest that officials demanded by reattached.

Ricciardo had to pull off some forceful overtaking moves to get to the front, but once he was there the Red Bull driver was never headed.

The Australian headed home Mercedes driver Valtteri Bottas and Williams rookie Lance Stroll, the latter scoring his first podium position. It might even have been second place, but Bottas was able to outdrag the Williams in the sprint to the flag.

Bottas did well to recover from a first-lap crash with Ferrari driver Kimi Raikkonen that saw the Mercedes drop off the lead lap. But like Ricciardo, Bottas was able to make the most of the Safety Car periods to recover lost ground.

Vettel recovered from his penalty to finish fourth, crucially one place ahead of Hamilton. Esteban Ocon was sixth, but lucky to survive an unfortunate clash with Force India team-mate Sergio Perez that forced the latter out of the race.

Next round of the World Drivers Championship is the Austrian Grand Prix on July 9.