Jorge Lorenzo has won the Italian MotoGP for the third successive season, breaking away from his Honda rivals at half-distance to claim Yamaha's first victory since round one in Qatar.
Inured rookie Marc Marquez looked set to claim an impressive second, overtaking Repsol team-mate Dani Pedrosa with five laps remaining - but threw away his perfect MotoGP podium form by sliding off with just three laps to go.
The put title leader Pedrosa back into the runner-up spot, although he faced late pressure from Tech 3 Yamaha's Cal Crutchlow, who finished one-second from the Spaniard to complete the podium.
Stefan Bradl (Honda LCR), Andrea Dovizioso (Ducati) and Nicky Hayden (Ducati) completed the top six.
The event started in disastrous fashion for home hero Valentino Rossi, whose hopes of mounting a podium challenge ended when he and Alvaro Bautista tangled in the mid-pack after just a few turns - sending them both slamming into a tyre wall.
Footage appeared to show Bautista turn across and strike the side of Rossi - whom Bautista appears to simply not have seen - as they made a left-right transition. The Spaniard instantly fell while Rossi was sent spearing off-track with him.
Both hit the tyre wall - preceded by soft barriers - hard and were lucky to walk away.
By that time Rossi's team-mate Lorenzo was already leading, having dived under pole sitter Pedrosa on the exit of turn one - forcing Pedrosa to lift his RCV.
Lorenzo, Pedrosa and Marquez - riding battered and bruised after a huge 170mph fall on Friday - soon broke away from the rest of the field, led by Crutchlow. There was little between the leading trio by the halfway stage, but Lorenzo's pace then proved unmatchable.
Lorenzo has now moved ahead of Marquez and into second in the standings, twelve points from Pedrosa, after five of 18 events.
Top satellite rider Crutchlow is now just six points from Marquez and felt he had a fighting chance of overhauling Pedrosa for third in the race, before opting to play safe once a podium was confirmed by Marquez's exit.