| 1 | Jeter ScoularPlace 1 · Grade 12 · Milbank | 12 | Milbank | 16:20.98 |
| 2 | Ben SicklerPlace 2 · Grade 10 · Grand Forks Central | 10 | Grand Forks Central | 16:25.13 PR |
| 3 | Gage SelbyPlace 3 · Grade 8 · Grand Forks Central | 8 | Grand Forks Central | 16:29.22 PR |
| 4 | Ryder GraffPlace 4 · Grade 12 · Sisseton | 12 | Sisseton | 16:53.91 PR |
| 5 | Grant MartinPlace 5 · Grade 12 · Grand Forks Central | 12 | Grand Forks Central | 16:59.62 |
| 6 | Logan KontzPlace 6 · Grade 11 · Flandreau | 11 | Flandreau | 17:19.24 |
| 7 | Jack MontgomeryPlace 7 · Grade 12 · PACT/Legacy | 12 | PACT/Legacy | 17:34.99 |
| 8 | Ty UhlirPlace 8 · Grade 12 · Grand Forks Central | 12 | Grand Forks Central | 17:43.76 |
| 9 | Ben SapaughPlace 9 · Grade 9 · Grand Forks Central | 9 | Grand Forks Central | 17:56.35 |
| 10 | Jace DauerPlace 10 · Grade 10 · Breckenridge/Wahpeton | 10 | Breckenridge/Wahpeton | 17:57.78 PR |
| 11 | Tayte JoachimsPlace 11 · Grade 9 · Flandreau | 9 | Flandreau | 17:58.21 PR |
| 12 | Calvin CraycraftPlace 12 · Grade 10 · Grand Forks Central | 10 | Grand Forks Central | 18:07.87 PR |
| 13 | Blaine BulgerPlace 13 · Grade 9 · Grand Forks Central | 9 | Grand Forks Central | 18:09.59 PR |
| 14 | Hunter MontgomeryPlace 14 · Grade 10 · PACT/Legacy | 10 | PACT/Legacy | 18:14.91 PR |
| 15 | Kaden SailerPlace 15 · Grade 12 · Grand Forks Central | 12 | Grand Forks Central | 18:17.37 PR |
| 16 | Matthew BothunPlace 16 · Grade 10 · Lac qui Parle Valley/Dawson-Boyd | 10 | Lac qui Parle Valley/Dawson-Boyd | 18:20.22 |
| 17 | Dallas BerryPlace 17 · Grade 12 · PACT/Legacy | 12 | PACT/Legacy | 18:30.35 |
| 18 | Charles MeyerPlace 18 · Grade 10 · Madison | 10 | Madison | 18:37.48 |
| 19 | Troy BerndtPlace 19 · Grade 12 · Breckenridge/Wahpeton | 12 | Breckenridge/Wahpeton | 18:39.23 |
| 20 | Jack EkrenPlace 20 · Grade 12 · Breckenridge/Wahpeton | 12 | Breckenridge/Wahpeton | 18:44.05 |
| 21 | Nathaniel HobbiePlace 21 · Grade 12 · Flandreau | 12 | Flandreau | 18:48.67 |
| 22 | Jack StuehrenbergPlace 22 · Grade 9 · Breckenridge/Wahpeton | 9 | Breckenridge/Wahpeton | 18:56.38 |
| 23 | Sam SchmidtPlace 23 · Grade 12 · Flandreau | 12 | Flandreau | 18:59.67 |
| 24 | Kolden HeineckePlace 24 · Grade 10 · Lac qui Parle Valley/Dawson-Boyd | 10 | Lac qui Parle Valley/Dawson-Boyd | 19:02.80 |
| 25 | David Van GorpPlace 25 · Grade 12 · PACT/Legacy | 12 | PACT/Legacy | 19:06.58 PR |
| 26 | Kintaro SarolPlace 26 · Grade 10 · Lac qui Parle Valley/Dawson-Boyd | 10 | Lac qui Parle Valley/Dawson-Boyd | 19:09.71 |
| 27 | Theo SteinbergerPlace 27 · Grade 10 · Breckenridge/Wahpeton | 10 | Breckenridge/Wahpeton | 19:14.53 |
| 28 | Gabe FriasPlace 28 · Grade 11 · Flandreau | 11 | Flandreau | 19:14.76 |
| 29 | Jaded HalvorsonPlace 29 · Grade 12 · Grand Forks Central | 12 | Grand Forks Central | 19:21.08 |
| 30 | Tommy KurtzPlace 30 · Grade 11 · Madison | 11 | Madison | 19:21.37 PR |
| 31 | Franco FloresPlace 31 · Grade 11 · Milbank | 11 | Milbank | 19:23.65 |
| 32 | Beckett VargasPlace 32 · Grade 10 · Madison | 10 | Madison | 19:33.72 |
| 33 | Aaron WillPlace 33 · Grade 10 · Lac qui Parle Valley/Dawson-Boyd | 10 | Lac qui Parle Valley/Dawson-Boyd | 19:35.79 |
| 34 | Beckham BerryPlace 34 · Grade 12 · Milbank | 12 | Milbank | 19:37.21 |
| 35 | Rudy EkrenPlace 35 · Grade 9 · Breckenridge/Wahpeton | 9 | Breckenridge/Wahpeton | 19:42.18 PR |
| 36 | Rylan WendlandPlace 36 · Grade 11 · Milbank | 11 | Milbank | 19:52.47 |
| 37 | Nolan FindlayPlace 37 · Grade 10 · Border West | 10 | Border West | 19:57.80 |
| 38 | Corey LorenPlace 38 · Grade 10 · PACT/Legacy | 10 | PACT/Legacy | 19:59.76 |
| 39 | Garrett MalikPlace 39 · Grade 12 · PACT/Legacy | 12 | PACT/Legacy | 20:01.72 |
| 40 | Luke YoungPlace 40 · Grade 10 · Border West | 10 | Border West | 20:02.29 |
| 41 | Rhett NoyesPlace 41 · Grade 12 · PACT/Legacy | 12 | PACT/Legacy | 20:03.42 |
| 42 | Tucker SteffensPlace 42 · Grade 12 · Tri-State | 12 | Tri-State | 20:14.45 |
| 43 | Oliver MeyerPlace 43 · Grade 12 · Madison | 12 | Madison | 20:31.72 |
| 44 | Eddie FeltonPlace 44 · Grade 10 · Lac qui Parle Valley/Dawson-Boyd | 10 | Lac qui Parle Valley/Dawson-Boyd | 20:51.28 |
| 45 | Braulio ChapaPlace 45 · Grade 11 · Border West | 11 | Border West | 21:15.50 |
| 46 | Timmy FelixPlace 46 · Grade 10 · Madison | 10 | Madison | 21:33.59 |
| 47 | Odin CarlsonPlace 47 · Grade 11 · Breckenridge/Wahpeton | 11 | Breckenridge/Wahpeton | 21:37.08 |
| 48 | Jacob VossPlace 48 · Grade 10 · Breckenridge/Wahpeton | 10 | Breckenridge/Wahpeton | 21:44.01 |
| 49 | Gordon OlsonPlace 49 · Grade 11 · Madison | 11 | Madison | 21:53.32 |
| 50 | Giobbe MeyerPlace 50 · Grade 10 · Madison | 10 | Madison | 21:53.85 PR |
| 51 | Henry StavPlace 51 · Grade 9 · Breckenridge/Wahpeton | 9 | Breckenridge/Wahpeton | 22:12.07 PR |
| 52 | AJ LindbladPlace 52 · Grade 10 · Breckenridge/Wahpeton | 10 | Breckenridge/Wahpeton | 22:16.19 |
| 53 | Owen NelsonPlace 53 · Grade 8 · Waubay/Summit | 8 | Waubay/Summit | 22:58.98 PR |
| 54 | Tristan BrownPlace 54 · Grade 12 · Madison | 12 | Madison | 23:06.17 |
| 55 | Carter FickesPlace 55 · Grade 12 · Border West | 12 | Border West | 23:50.91 |
| 56 | Gavin TaylorPlace 56 · Grade 12 · Madison | 12 | Madison | 24:46.69 |
| 57 | Nathan RossPlace 57 · Grade 11 · Flandreau | 11 | Flandreau | 25:43.06 |
| 58 | Carsyn GrebnerPlace 58 · Grade 10 · Waubay/Summit | 10 | Waubay/Summit | 27:31.36 |