Yamaha's Jorge Lorenzo sealed his third MotoGP win in a row after winning the Italian Grand Prix to close the gap on championship-leading teammate Valentino Rossi to six points.
Ducati's Andrea Iannone was second, a career-best after starting on pole position for the first time, while veteran great Rossi delighted his home crowd by climbing from eighth place on the grid to the podium.
Rossi now has 118 points to Lorenzo's 112.
"Three in a row. I think a few times in MotoGP I made three in a row but now the goal is to make four," said Lorenzo, who took the lead on the opening lap and stayed there to the chequered flag.
"It's going to be difficult but we're going to try."
Spain's double world champion Marc Marquez crashed his Honda six laps from the finish after climbing from 13th - his worst qualifying performance - to second in the space of two laps.
Marquez is now fifth overall with 69 points.
"As always I tried to put my pace. Today the pace was a little bit slow but I could keep it high to give me the chance to go away," said Lorenzo, on the podium for the 88th time in his career.
The next race, round seven of the championship, is in Barcelona on June 14.