Nico Rosberg extended his championship lead to 14 points after winning his home race, the German Grand Prix at Hockenheim.
The Mercedes driver led all 67 laps en-route to his fourth win of the year as team-mate and rival Lewis Hamilton recovered to take third after starting 20th on the grid.
Valtteri Bottas continued his run of podiums taking an impressive second holding off a hard-charging Hamilton in the final few laps.
Massa and Magnussen collide
At the start it was Rosberg who led away from Bottas but at the high-speed first turn Kevin Magnussen and Felipe Massa made contact, rolling over the car before coming to a halt on all four wheels in the run-off area.
The Brazilian was unhurt as Magnussen suffered some wheel damage and dropped to the back of the field.
The incident prompted a safety car period as Sebastian Vettel and Fernando Alonso moved up into third and fourth while Vettel's team-mate Daniel Ricciardo dropped back having to avoid the crash just ahead of him.
As the forecast rain stayed away, Hamilton had no help in his bid to fight back through the field from his lowly grid position and, after making quick work of the lower midfield, the Mercedes driver was caught up with the Red Bull of Ricciardo and Kimi Raikkonen just outside the top 10.
Some brilliant wheel-to-wheel action ensued at the turn six hairpin, with the power of the Mercedes giving Hamilton all the tools he needed, however, there was also a few nervy moments particularly with Raikkonen as the pair made slight contact.
But Hamilton was in the right place at the right time to pass both the Ferrari and the Red Bull in the one move as he went long on his first stint.
Mixed tyre strategies
With the rain holding off it meant the still warm temperatures made for a tough test of the soft and super-soft tyres.
Most opted for a three-stop while some only made two but for Hamilton his comeback was hindered by contact while passing Jenson Button at turn six.
The McLaren driver ran deep under braking and, believing his former team-mate was allowing him through, Hamilton went down the inside only for Button to come back and hit the front of the Mercedes damaging the front wing.
This meant the planned two-stop for Hamilton had to change to three as he was unable to make the tyres last as long as needed because of the loss of front grip
Alonso vs Red Bull
After their terrific scrap at Silverstone, Vettel and Alonso ran within close proximity for much of this race. Differing strategies meant there was not the big wheel-to-wheel action as there was two weeks ago but there was a couple of key moments particularly as the pair looked to move past Kimi Raikkonen following their first pit-stops.
The two Ferrari's and the Red Bull ran three abreast along the straight to turn six with Raikkonen becoming the meat in the sandwich as the German moved through.
At their final stops Vettel pitted much earlier than Alonso as the Spaniard looked to be quicker at the end of the race but instead another big battle with Daniel Ricciardo ensued as the Australian would not relinquish fifth place.
After defending for several laps into the hairpin, Alonso finally got the move done, getting a better exit from turn six and holding off the hard charging Aussie up to turn eight.
Rosberg eases to victory
Up front it was all about Rosberg as the German ran well clear of the field en-route to his first win at his home race and giving the local fans another reason to celebrate.
With Hamilton posting blistering lap times he was running fourth, after easily passing Alonso it seemed to be a question of when not if the Briton passed Bottas for second.
However, the Williams remains one of the fastest cars in a straight line and even under DRS, Bottas was able to keep the Briton at bay and claim his third successive podium.
Sebastian Vettel ran an easy fourth at the end as Alonso and Ricciardo were separated by under a tenth of a second in fifth and sixth.
Nico Hulkenberg was an impressive seventh for Force India despite struggling for much of the race with a poor handling car with Jenson Button eighth ahead of recovering team-mate Magnussen as Sergio Perez gave Force India a second straight double points finish in tenth.