Marc Marquez won the German MotoGP at Sachsenring to make it nine victories in nine races this season, despite starting from the pit lane.
The Spaniard, 21, took to the grid on wets, amid patchy rain, but switched to his slick-tyre bike on the warm-up lap.
With the majority of the field doing the same, the world champion took the lead on lap six and never looked back.
The championship leader finished 1.46secs ahead of Honda team-mate Dani Pedrosa, with Jorge Lorenzo in third.
All the podium finishers started from the pit lane.
Germany's Stefan Bradl, who made a pre-race change to dry weather tyres while still on the grid, started alone on the front row.
But the 24-year-old was quickly caught on a bike that was still largely set up for wet weather and eventually finished 16th in his home grand prix.
Marquez, who had qualified on pole but then had to fight through from 10th, is the first rider to win nine consecutive races since Italian Giacomo Agostini in 1970.
He extended his world championship lead to 77 points.
Fellow Spaniard Pedrosa's second place moved the 28-year-old ahead of six-time world champion Valentino Rossi in the overall standings after the Italian finished fourth on his Yamaha.
1. Marc Marquez (Spain) Honda 41mins 47.664secs
2. Dani Pedrosa (Spain) Honda 41mins 49.130secs
3. Jorge Lorenzo (Spain) Yamaha 41mins 57.981secs
4. Valentino Rossi (Italy) Yamaha 42mins 06.858secs
5. Andrea Iannone (Italy) Ducati 42mins 11.173secs
6. Aleix Espargaro (Spain) Yamaha 42mins 15.473secs
7. Pol Espargaro (Spain) Yamaha 42mins 20.917secs
8. Andrea Dovizioso (Italy) Ducati 42mins 21.532secs
9. Alvaro Bautista (Spain) Honda 42mins 21.895secs
10. Cal Crutchlow (Britain) Ducati 42mins 22.340secs
World championship standings
1. Marc Marquez (Spain) Honda 225 pts
2. Dani Pedrosa (Spain) Honda 148
3. Valentino Rossi (Italy) Yamaha 41
4. Andrea Dovizioso (Italy) Ducati 99
5. Jorge Lorenzo (Spain) Yamaha 97