1 | Felix Paiement (C1) | CAN | 2:15.70 | | - |
| Robert Panait (C1) | CAN | 2:15.70 | | - |
| Jingbo Gao (C1) | CAN | 2:15.70 | | - |
| Liam Tao (C1) | CAN | 2:15.70 | | - |
2 | Charles Theriault (C1) | CAN | 2:19.00 | | +3.300 |
| Jerry Ma (C1) | CAN | 2:19.00 | | +3.300 |
| Samuel Richard Morin (C1) | CAN | 2:19.00 | | +3.300 |
| Jimmy Fortin-Simard (C1) | CAN | 2:19.00 | | +3.300 |
3 | Arthur Michaud (C1) | CAN | 2:23.60 | | +7.900 |
| Samuel Whittom (D2) | CAN | 2:23.60 | | +7.900 |
| Lauric Clement (D2) | CAN | 2:23.60 | | +7.900 |
| Miguel Baril (D2) | CAN | 2:23.60 | | +7.900 |
4 | Ludovic Guay (C1) | CAN | 2:29.00 | | +13.300 |
| Simon-Pierre Mercier (D2) | CAN | 2:29.00 | | +13.300 |
| Felix Bessette (C1) | CAN | 2:29.00 | | +13.300 |
| Emile Godin (D1) | CAN | 2:29.00 | | +13.300 |
5 | Olivier Roy (D2) | CAN | 2:30.60 | | +14.900 |
| Jacob Bouchard (D2) | CAN | 2:30.60 | | +14.900 |
| Grayson Benton Kearney (n/a) | CAN | 2:30.60 | | +14.900 |
| Olivier Mainville (n/a) | CAN | 2:30.60 | | +14.900 |
6 | Éliot Lebel (D2) | CAN | 2:38.20 | | +22.500 |
| Jérôme Gauthier (D2) | CAN | 2:38.20 | | +22.500 |
| Yannick Ansbert Nguekeng (D1) | CAN | 2:38.20 | | +22.500 |
| Louis Hache (C1) | CAN | 2:38.20 | | +22.500 |
7 | Malik Montminy (D2) | CAN | 2:40.40 | | +24.700 |
| Yitian Fortin (D1) | CAN | 2:40.40 | | +24.700 |
| Antoine Lavoie (C1) | CAN | 2:40.40 | | +24.700 |
| Josh William Senat (n/a) | CAN | 2:40.40 | | +24.700 |
8 | Adam Whittom (D2) | CAN | 2:45.00 | | +29.300 |
| Philippe Lebegue (C1) | CAN | 2:45.00 | | +29.300 |
| Xavier Sansfaçon (n/a) | CAN | 2:45.00 | | +29.300 |
| Gabriel Roy (n/a) | CAN | 2:45.00 | | +29.300 |
9 | Justin Gingras (C1) | CAN | 2:48.90 | | +33.200 |
| Louis-Vincent Larouche (D1) | CAN | 2:48.90 | | +33.200 |
| Mathias Lavoie (D2) | CAN | 2:48.90 | | +33.200 |
| Benjamin Bisson (n/a) | CAN | 2:48.90 | | +33.200 |
10 | Elliot Breton (D1) | CAN | 2:49.90 | | +34.200 |
| William Burns (D2) | CAN | 2:49.90 | | +34.200 |
| Nathan Mercier (D1) | CAN | 2:49.90 | | +34.200 |
| Charles-Étienne Audet (D2) | CAN | 2:49.90 | | +34.200 |
11 | William Landry (D1) | CAN | 2:50.30 | | +34.600 |
| Étienne Crête (D2) | CAN | 2:50.30 | | +34.600 |
| Justin Parent (D1) | CAN | 2:50.30 | | +34.600 |
| Vincent Tremblay (D1) | CAN | 2:50.30 | | +34.600 |
12 | Xavier Gamache (D2) | CAN | 2:54.20 | | +38.500 |
| Émile Pelletier (D2) | CAN | 2:54.20 | | +38.500 |
| Logan Boies (n/a) | CAN | 2:54.20 | | +38.500 |
| Charles-Etienne Parent (n/a) | CAN | 2:54.20 | | +38.500 |
13 | Gabriel Berthiaume (n/a) | CAN | 3:07.90 | | +52.200 |
| Arnaud Fallon (n/a) | CAN | 3:07.90 | | +52.200 |
| Anthony Merheb (n/a) | CAN | 3:07.90 | | +52.200 |
| Maxime Bolduc (n/a) | CAN | 3:07.90 | | +52.200 |
14 | Jules Vignola (D1) | CAN | 3:08.30 | | +52.600 |
| Lucas Parent (D2) | CAN | 3:08.30 | | +52.600 |
| Donald Xianshun Huang (n/a) | CAN | 3:08.30 | | +52.600 |
| Joshua Tati Bismaths (n/a) | CAN | 3:08.30 | | +52.600 |
15 | Ethan Begin (D1) | CAN | 3:16.60 | | +1.00.900 |
| Samuel Burns (n/a) | CAN | 3:16.60 | | +1.00.900 |
| Benjamin Lapointe (n/a) | CAN | 3:16.60 | | +1.00.900 |
| Arthur Levitte (n/a) | CAN | 3:16.60 | | +1.00.900 |
16 | William Faucher (D1) | CAN | 3:20.20 | | +1.04.500 |
| Elliot McNicoll (n/a) | CAN | 3:20.20 | | +1.04.500 |
| Arnaud Dutrisac (n/a) | CAN | 3:20.20 | | +1.04.500 |
17 | Charles-Olivier Berger (n/a) | CAN | 3:20.70 | | +1.05.000 |
| Lucas Bolduc (D1) | CAN | 3:20.70 | | +1.05.000 |
| Emmanuel Lévesque (D2) | CAN | 3:20.70 | | +1.05.000 |
18 | Gabriel Therrien (n/a) | CAN | 3:33.00 | | +1.17.300 |
| Zixuan Pei (n/a) | CAN | 3:33.00 | | +1.17.300 |
| Edouard Langevin (n/a) | CAN | 3:33.00 | | +1.17.300 |