A perfect start from both McLarens saw them lead through the first corner, with Häkkinen ahead of Coulthard, followed by Fisichella and Michael Schumacher. Esteban Tuero became the first retirement when he ran wide at Massenet in his Minardi and hit the armco barrier. In the early stages the McLarens pulled ahead, netting 12 fastest laps between them from laps 4 to 12. On lap 10, Frentzen and Irvine collided at the Loews hairpin; Frentzen retired but Irvine was able to continue. Rubens Barrichello dropped out on lap 12 with a suspension failure in his Stewart; his teammate Jan Magnussen suffered the same problem shortly before half distance. On lap 18, Coulthard's engine blew, promoting Fisichella to second.
Michael Schumacher was first to pit for fuel on lap 30. Fisichella pitted the following lap, coming out of the pits behind the Ferrari. Soon Michael came up behind Fisichella's teammate, Wurz, and tried to get past. At the Loews hairpin, Michael went down the inside but Wurz did not give way. The two cars touched and the Ferrari was damaged. Michael pitted for repairs, eventually coming out three laps down on Häkkinen. Wurz appeared unaffected, but on lap 43 his suspension broke due to damage from the collision and he had a huge accident coming out of the tunnel, finally stopping at the Nouvelle Chicane.
Ralf Schumacher suffered a suspension failure in his Jordan on lap 45, before the two Prosts retired within seven laps of each other, Olivier Panis with wheel problems on lap 50 and Trulli with a gearbox failure on lap 57. By this point, Salo had moved up to fourth behind Häkkinen, Fisichella and Irvine, with Jean Alesi fifth in the Sauber and Villeneuve sixth. On lap 73, Alesi's gearbox failed, promoting Pedro Diniz in the second Arrows to sixth, just ahead of the recovering Michael Schumacher. Attempting to overtake Diniz at the Nouvelle Chicane on the final lap, Michael lost control and hit the back of the Arrows, losing his front wing; he ended up finishing tenth, two laps down.
Häkkinen's final margin of victory over Fisichella was 11.4 seconds, with another 30 seconds back to Irvine and a further 19 to Salo, the last driver on the lead lap. Villeneuve was fifth with Diniz holding on to sixth.