フェルナンド・アロンソ(ルノー)の5戦連続ポールポジションで幕を開けたカナダGP決勝。コースオフやウォールにヒットするマシンが続出、2度セーフティーカーが入る波乱のレース展開ながら、アロンソが貫禄の走りでトップを守り切り、4連勝を飾った。
フロントロウのジャンカルロ・フィジケラ(ルノー)はフライングでドライブスルーペナルティを受けると、レースはトップを行くアロンソをキミ・ライコネン(マクラーレン)が追いかける展開。しかしライコネンは及ばず、フィニッシュ直前にミスをし3位。5番グリッドのミハエル・シューマッハ(フェラーリ)はスタートで7位まで後退するも、じりじりと順位を上げ2位表彰台。5位にはトヨタのヤルノ・トゥルーリが入り、今季初入賞を果たした。
苦しいレース展開ながら、最後まで入賞を目指していたホンダのジェンソン・バトンは最後にデイビッド・クルサード(レッドブル)に抜かれ9位に終わった。スーパーアグリの佐藤琢磨は残り2周でウォールに激突したが、完走扱いとなり最下位15位でレースを終えた。アロンソの勝利により、ミシュランはF1参戦100勝目をマークした。