| 1 | Seamus McGettiganPlace 1 · Grade 12 · Ottawa (Twp.) | 12 | Ottawa (Twp.) | 15:47.0 PR |
| 2 | Thomas LechtenbergPlace 2 · Grade 11 · Ottawa (Marquette) | 11 | Ottawa (Marquette) | 15:50.0 |
| 3 | Brendon SebastianPlace 3 · Grade 11 · LaSalle (L.-Peru) | 11 | LaSalle (L.-Peru) | 16:11.4 |
| 4 | Owen StonekingPlace 4 · Grade 11 · LaSalle (L.-Peru) | 11 | LaSalle (L.-Peru) | 16:16.7 PR |
| 5 | Alec KesselPlace 5 · Grade 11 · LaSalle (L.-Peru) | 11 | LaSalle (L.-Peru) | 16:17.7 PR |
| 6 | Ryan PorterPlace 6 · Grade 11 · LaSalle (L.-Peru) | 11 | LaSalle (L.-Peru) | 16:23.3 |
| 7 | Ryan PijanowskiPlace 7 · Grade 11 · LaSalle (L.-Peru) | 11 | LaSalle (L.-Peru) | 16:25.2 |
| 8 | Luis AguilarPlace 8 · Grade 10 · Ottawa (Marquette) | 10 | Ottawa (Marquette) | 16:26.4 |
| 9 | Jake WeissPlace 9 · Grade 12 · Ottawa (Twp.) | 12 | Ottawa (Twp.) | 16:32.6 PR |
| 10 | Carter SawinPlace 10 · Grade 11 · LaSalle (L.-Peru) | 11 | LaSalle (L.-Peru) | 16:39.2 PR |
| 11 | Danny RodriguezPlace 11 · Grade 10 · Streator (Twp.) | 10 | Streator (Twp.) | 16:48.2 |
| 12 | Brandt EllerPlace 12 · Grade 11 · Ottawa (Marquette) | 11 | Ottawa (Marquette) | 16:55.5 |
| 13 | Dolan HarrisPlace 13 · Grade 11 · Streator (Twp.) | 11 | Streator (Twp.) | 17:15.2 |
| 14 | Adrian JonesPlace 14 · Grade 10 · Streator (Twp.) | 10 | Streator (Twp.) | 17:18.4 |
| 15 | Seth BruckPlace 15 · Grade 12 · Ottawa (Twp.) | 12 | Ottawa (Twp.) | 17:22.9 PR |
| 16 | Nathan WilliamsonPlace 16 · Grade 11 · Ottawa (Twp.) | 11 | Ottawa (Twp.) | 17:27.0 PR |
| 17 | Josh BuckleyPlace 17 · Grade 10 · LaSalle (L.-Peru) | 10 | LaSalle (L.-Peru) | 17:30.9 PR |
| 18 | Drew KlattPlace 18 · Grade 10 · Ottawa (Twp.) | 10 | Ottawa (Twp.) | 17:33.2 |
| 19 | Cale AdamsPlace 19 · Grade 12 · Streator (Twp.) | 12 | Streator (Twp.) | 17:45.6 |
| 20 | Logan SchaeferPlace 20 · Grade 9 · LaSalle (L.-Peru) | 9 | LaSalle (L.-Peru) | 17:47.9 |
| 21 | Danny ParrPlace 21 · Grade 11 · Streator (Twp.) | 11 | Streator (Twp.) | 17:51.4 |
| 22 | Connor BeanPlace 22 · Grade 9 · LaSalle (L.-Peru) | 9 | LaSalle (L.-Peru) | 18:07.3 |
| 23 | Zach RivettPlace 23 · Grade 12 · Seneca | 12 | Seneca | 18:08.4 PR |
| 24 | Jason BessettPlace 24 · Grade 11 · Ottawa (Twp.) | 11 | Ottawa (Twp.) | 18:26.3 |
| 25 | Kole GallickPlace 25 · Grade 12 · Seneca | 12 | Seneca | 18:36.2 PR |
| 26 | Jacob PocivasekPlace 26 · Grade 9 · LaSalle (L.-Peru) | 9 | LaSalle (L.-Peru) | 18:41.0 |
| 27 | Jacob SchrikPlace 27 · Grade 9 · Ottawa (Twp.) | 9 | Ottawa (Twp.) | 18:56.1 |
| 28 | Joey ThomasPlace 28 · Grade 9 · Seneca | 9 | Seneca | 19:01.5 |
| 29 | Kyle WheelerPlace 29 · Grade 11 · Streator (Twp.) | 11 | Streator (Twp.) | 19:04.1 |
| 30 | Christopher PysePlace 30 · Grade 12 · LaSalle (L.-Peru) | 12 | LaSalle (L.-Peru) | 19:25.0 |
| 31 | Chase RamonPlace 31 · Grade 9 · Streator (Twp.) | 9 | Streator (Twp.) | 19:32.2 |
| 32 | Matthew AmbrosePlace 32 · Grade 10 · LaSalle (L.-Peru) | 10 | LaSalle (L.-Peru) | 19:34.9 |
| 33 | Wyatt HettelPlace 33 · Grade 9 · Ottawa (Marquette) | 9 | Ottawa (Marquette) | 19:41.0 |
| 34 | Declan McGettiganPlace 34 · Grade 9 · Ottawa (Twp.) | 9 | Ottawa (Twp.) | 19:47.9 PR |
| 35 | Jake FitzgeraldPlace 35 · Grade 10 · LaSalle (L.-Peru) | 10 | LaSalle (L.-Peru) | 19:50.0 PR |
| 36 | Keegan LandersPlace 36 · Grade 9 · Ottawa (Twp.) | 9 | Ottawa (Twp.) | 20:11.8 PR |
| 37 | Logan BundyPlace 37 · Grade 12 · Streator (Twp.) | 12 | Streator (Twp.) | 20:15.4 |
| 38 | Mason KategayaPlace 38 · Grade 10 · Seneca | 10 | Seneca | 20:15.9 PR |
| 39 | Calvin WilsonPlace 39 · Grade 10 · Seneca | 10 | Seneca | 20:20.6 PR |
| 40 | Jacob WilliamsPlace 40 · Grade 11 · Streator (Twp.) | 11 | Streator (Twp.) | 20:28.1 |
| 41 | Damon DarrowPlace 41 · Grade 9 · Streator (Twp.) | 9 | Streator (Twp.) | 20:30.5 |
| 42 | Tom LambPlace 42 · Grade 12 · Ottawa (Twp.) | 12 | Ottawa (Twp.) | 20:45.8 |
| 43 | Sundeep YerrapragadaPlace 43 · Grade 9 · Ottawa (Marquette) | 9 | Ottawa (Marquette) | 21:17.7 |
| 44 | Sam LesakPlace 44 · Grade 12 · Streator (Twp.) | 12 | Streator (Twp.) | 21:29.9 PR |
| 45 | Justin FinnPlace 45 · Grade 9 · Ottawa (Twp.) | 9 | Ottawa (Twp.) | 21:36.8 |
| 46 | Kyle ScheonkasePlace 46 · Grade 12 · Streator (Twp.) | 12 | Streator (Twp.) | 21:55.4 PR |
| 47 | Jacob ChalkeyPlace 47 · Grade 12 · Streator (Twp.) | 12 | Streator (Twp.) | 22:04.7 PR |
| 48 | John Paul NiehausPlace 48 · Grade 9 · LaSalle (L.-Peru) | 9 | LaSalle (L.-Peru) | 22:32.9 PR |
| 49 | Joshua SensibaPlace 49 · Grade 9 · LaSalle (L.-Peru) | 9 | LaSalle (L.-Peru) | 22:59.1 |
| 50 | Ulysses MarquesPlace 50 · Grade 12 · LaSalle (L.-Peru) | 12 | LaSalle (L.-Peru) | 23:29.0 PR |
| 51 | Cam RiedeselPlace 51 · Grade 10 · Ottawa (Twp.) | 10 | Ottawa (Twp.) | 23:40.3 |
| 52 | Nolan PerryPlace 52 · Grade 9 · Ottawa (Twp.) | 9 | Ottawa (Twp.) | 23:47.0 |
| 53 | Ethan RowePlace 53 · Grade 11 · Ottawa (Twp.) | 11 | Ottawa (Twp.) | 23:47.9 |