Chris Vermeulen took pole position on Saturday - his first of the season and third and final of his career overall - followed by Casey Stoner and Randy de Puniet on the Kawasaki.
On the second row of the grid is Marco Melandri, John Hopkins and Colin Edwards in fourth, fifth and sixth.
[4][5] Toni Elías did not take part in the race after he broke his leg in one of the free practice sessions.
[6] Before the start of the formation lap, the Pramac Ducati bike of Alex Hofmann stalled on the grid, causing some of the crewmembers to run onto the track with equipment to restart it.
As the lights go out, Stoner takes the lead on the opening lap as the blasts past Vermeulen into the Haarbocht (Turn 1), followed by the other Australian and the American Hopkins.
All throughout the field there is action, with Capirossi overtaking Rossi and Hoffmann for ninth and Hopkins taking second from Vermeulen on the straight before the Ruskenhoek (Turn 8).
At the front, Hayden spectacularly manages to surprise Vermeulen as they go into the Ruskenhoek, going up the inside, outbreaking him and sliding sideways into the corner, grabbing second in the process.
Hopkins' gap to Stoner is now +1.299 seconds and Pedrosa takes third from the Suzuki rider at the entrance of De Bult corner.
However, the surprised Barros by retaking the spot at the Ossebroeken when he went a tad too wide, allowing the Italian to get back at him.
Exiting Strubben and coming onto the Veenslang, Rossi effortlessly took second place from a fading Hopkins, now setting his sights on Stoner at the front.
He however, closed the door on him, and with the Frenchman nowhere to go, collided with the rear of Vermeulen, sending him over his bike and into the gravel at high speed.
As lap thirteen starts, Rossi manages to close in on Stoner, cutting the gap from +1.528 to +0.588 seconds at the start/finish straight.
On lap fifteen, Rossi ran a bit wide at the Ossenbroeken, gifting Stoner some breathing room.
Rossi tries again at the exit of the Ramshoek to line up a pass at the Geert Timmer Bocht, but Stoner denies him again, closing the inside.
On lap seventeen, Capirossi - who was in a lowly fifteenth position - enters the pits to retire, as he has problems with the bike.
Makoto Tamada, riding the Dunlop Yamaha, is also under pressure from the Konica Minolta Honda of Shinya Nakano.
Lap twenty-one and Hoffmann at the back has taken eighth place from Melandri, who is still under pressure from West and Checa.
No overtakes happened and Rossi jubilantly cruised to the flag to win the race - his third victory of the season.
On the parade lap back to parc-fermé, Rossi stopped as some of his fans celebrated with him on the track, congratulating him for the win.
He then stops again in front of the TT Assen logo on the ground to celebrate once more while the other riders slowly make their way back to parc-fermé.
The Italian national anthem plays and then the trio sprays the champagne, with Hayden wearing an A-Style helmet as they do so.