Max Verstappen registered his second win of the year at the rain-hit German Grand Prix.
The Red Bull driver finished ahead of Ferrari's Sebastian Vettel, while Toro Rosso's Daniil Kvyat came third.
It was a miserable day for Mercedes as Lewis Hamilton finished 11th after two mistakes, while teammate Valtteri Bottas crashed out at the first corner with eight laps remaining.
Hamilton was also handed a five-second penalty for entering the pit lane dangerously.
The chaotic race featured four safety car periods and the winner made five pit stops to change back and forth between wet and dry tyres.