Russell movió bien desde la pole position y mantuvo el liderato sobre Verstappen en el camino a la primera curva del Circuito Gilles Villeneuve, mientras que Antonelli logró adelantar a Piastri para colocarse tercero en la curva tres.
Más atrás en el orden, Colapinto logró adelantar a Albon para colocarse noveno en la parte inicial de la primera vuelta, pero el de Williams intentó recuperar la posición al llegar a la curva ocho, donde se quedó sin pista, debió cortar por la hierba y regresó delante de Colapinto.
Esto permitió a Hulkenberg adelantar a ambos, mientras que Colapinto luego pudo superar a Albon, quien también se vio superado por Hadjar.
Como era de esperarse, Norris y Leclerc, quienes arrancaron con el compuesto duro a diferencia del medio que eligieron quienes estaban por delante, se mantuvieron en pista y tomaron el primer y segundo lugar, respectivamente, pero con Russell a menos seis segundos del líder al alcanzar la línea de las 20 vueltas del gran premio.
Russell volvió al primer lugar de la carrera cuando Norris finalmente entró en pits en la 30º vuelta para cambiar de duros a medios, regresando a la pista en la quinta posición, delante de Leclerc, quien paró un giro antes, pero en su caso cambió duros por duros, una decisión con la que se mostró disconforme con Ferrari.
Russell cumplió su segundo paso por pits en la vuelta 42, lo que dejó a Piastri como líder momentáneo delante de Norris y Leclerc, mientras el británico de Mercedes era cuarto al volver a la pista, tres segundos por delante de Verstappen.
Los McLaren volvieron a boxes unas vueltas más tarde, lo que colocó a Leclerc al frente al llegar a la vuelta 50 de la carrera.
A 15 vueltas de la bandera a cuadros, Russell estaba nuevamente en el primer lugar una vez que Leclerc entró en pits por segunda vez, con Verstappen a dos segundos del piloto británico, mientras Antonelli buscaba aferrarse al podio .
Sin embargo, la atención pasó a estar en los pilotos de McLaren en las vueltas finales de la carrera, ya que Norris logró alcanzar a Piastri a cuatro vueltas de la bandera a cuadros y se lanzó por dentro en la horquilla de la curva 10, pero el australiano emparejó a su compañero de equipo a la salida y ambos transitaron casi a la par hasta la chicana final.
Allí Piastri quedó por delante al tener la línea interna y Norris intentó un adelantamiento donde no había lugar y tocó la rueda trasera izquierda del coche del australiano y golpeó la pared de pits, lo que le causó un abandono inmediato en el lugar.
La carrera fue neutralizada por el coche de seguridad y todos aprovecharon para pasar por pits, pero finalmente no hubo tiempo para un reinicio y Russell se llevó la victoria, delante de Verstappen y Antonelli.
Piastri obtuvo el cuarto lugar, delante de los Ferrari de Leclerc y Lewis Hamilton, mientras que Fernando Alonso, Nico Hulkenberg, Esteban Ocon y Carlos Sainz completaron los diez primeros puestos.