Defending champion Marc Marquez saw off the challenge of Jorge Lorenzo to claim a sixth successive win of the MotoGP season at the Italian Grand Prix.
Spaniard Marquez started on pole but exchanged first place several times with Lorenzo before finally edging his compatriots by 0.121s on the final lap.
The 21-year-old now leads the world championship by 53 points from Italian Valentino Rossi, who finished third.
Britain's Bradley Smith and Cal Crutchlow did not complete the race.
Smith, 23, crashed out on lap four, before Crutchlow, 28, collided with Germany's Stefan Bradl, with neither rider injured.
Six-time world champion Rossi was cheered on by home support in the 300th Grand Prix of his career as he fought back from 10th on the starting grid.
The 35-year-old moved into second place in the championship standings ahead of Spaniard Dani Pedrosa, who finished fourth.
However, Marquez maintained his 100% start to the season after previously winning in Qatar, the Americas, Argentina, Spain and France.
He becomes the first rider since Rossi in 2002 to win six successive races.
1. Marc Marquez (Spain) Honda 41min 38.254sec,
2. Jorge Lorenzo (Spain) Yamaha at 0.121sec,
3. Valentino Rossi (Italy) Yamaha 2.688,
4. Dani Pedrosa (Spain) Honda 14.046,
5. Pol Espargaro (Spain) Yamaha 15.603,
6. Andrea Dovizioso (Italy) Ducati 17.042,
7. Andrea Iannone (Italy) Ducati 17.129,
8. Alvaro Bautista (Spain) Honda 27,407,
9. Aleix Espargaro (Spain) Yamaha 41,886,
10. Yonny Hernandez (Colombia) Ducati 45,212
1. Marc Marquez (Spain) Honda 150pts
2. Valentino Rossi (Italy) Yamaha 97pts
3. Dani Pedrosa (Spain) Honda 96.4pts
4. Jorge Lorenzo (Spain) Yamaha 65pts
5. Andrea Dovizioso (Italy) Ducati 63pts
6. Pol Espargaro (Spain) Yamaha 49pts
7. Aleix Espargaro (Spain) Yamaha 44pts
8. Stefan Bradl (Germany) Honda 39pts
9. Alvaro Bautista (Spain) Honda 34pts
10. Bradley Smith (GB) Yamaha 34pts