Spain's MotoGP world champion Marc Marquez won the German Grand Prix from pole position on Sunday for his sixth win in a row at the Sachsenring in a Honda one-two with compatriot Dani Pedrosa.
Italy's Valentino Rossi finished third for Yamaha to extend his championship lead over Spanish team mate Jorge Lorenzo, who was fourth, to 13 points.
Rossi, a nine times champion in all categories, has 179 points to Lorenzo's 166 after nine of 18 races. Marquez is fourth overall with 114.
The victory, at a circuit he has dominated since his 125cc days, was Marquez's second of the season and Honda's first one-two of the year.
"From the beginning I felt good and then when I had the gap I tried to manage it," said the Spaniard, who was passed at the start by Lorenzo but retook the lead after four laps and pulled away.
"I'm happy because during this weekend we were completely first and it's been a long time since I did that."
With Marquez on his own, the battle for second provided most of the excitement.
Rossi went wheel-to-wheel with Lorenzo and passed after seven laps, with Marquez 1.8 seconds ahead, but any hopes the Italian had of closing the gap soon vanished.
Pedrosa overtook Lorenzo and reeled in Rossi before regaining second place -- his grid position -- with 14 of 30 laps remaining.
"It was a very difficult race, especially the beginning for me," Pedrosa told BT Sport. "I had some issues at the beginning with the setting but towards the middle of the race the tank became emptier and I felt more comfortable.
"I passed Jorge and then immediately caught Valentino but it was not easy to pass because on the exit the Yamaha was very strong."
Rossi, who had started the day 10 points clear of Lorenzo, was happy with his afternoon's work.
"I think Dani had something in his pocket for the end," said the Italian. "I was at the limit, I pushed hard, I kept constantly the rhythm but at one point Dani did two laps very fast. So I think today was the maximum.
"In this track we know we have to suffer compared to the Hondas, but another podium and I gained three points on Jorge. This is important for the championship and we will wait for better racetracks for our M1 (bike)."
Moto GP: Rossi wins last-lap thriller at Assen
Dutch Grand Prix to make Sunday switch in 2016