| 1 | Landon GrovePlace 1 · South Hamilton | — | South Hamilton | 20:10.00 | 1 |
| 2 | Seth GodfredsenPlace 2 · South Hamilton | — | South Hamilton | 20:16.00 | 2 |
| 3 | Josh GrahamPlace 3 · Eagle Grove-B | — | Eagle Grove-B | 20:27.00 | 3 |
| 4 | Jensen CooperPlace 4 · Eagle Grove-B | — | Eagle Grove-B | 20:33.00 | 4 |
| 5 | Wyatt BinghamPlace 5 · Webster City | — | Webster City | 20:44.00 | 5 |
| 6 | Connor BockenPlace 6 · St Edmond | — | St Edmond | 20:45.55 | 6 |
| 7 | Josue CastroPlace 7 · Eagle Grove-B | — | Eagle Grove-B | 20:45.95 | 7 |
| 8 | Nate GraingerPlace 8 · Humboldt | — | Humboldt | 20:52.00 | 8 |
| 9 | Paul OlsonPlace 9 · Humboldt | — | Humboldt | 21:08.00 | 9 |
| 10 | Aiden ChristensenPlace 10 · Humboldt | — | Humboldt | 21:10.00 | 10 |
| 11 | Trevor LammersPlace 11 · South Hamilton | — | South Hamilton | 21:12.00 | 11 |
| 12 | Brady BeckPlace 12 · Eagle Grove-B | — | Eagle Grove-B | 21:16.00 | 12 |
| 13 | Adam HerringtonPlace 13 · Eagle Grove-B | — | Eagle Grove-B | 21:17.00 | 13 |
| 14 | Carter HatcherPlace 14 · Humboldt | — | Humboldt | 21:39.00 | 14 |
| 15 | Trey SieversPlace 15 · Roland Story | — | Roland Story | 21:45.00 | 15 |
| 16 | Gabe SlifkaPlace 16 · Roland Story | — | Roland Story | 21:51.00 | 16 |
| 17 | Viktor NezvedaPlace 17 · Algona | — | Algona | 21:53.00 | 17 |
| 18 | Jack StackhousePlace 18 · St Edmond | — | St Edmond | 21:55.00 | 18 |
| 19 | Adam ThielPlace 19 · Roland Story | — | Roland Story | 22:05.00 | 19 |
| 20 | Gabe NadyPlace 20 · Roland Story | — | Roland Story | 22:12.00 | 20 |
| 21 | Gabe RolonPlace 21 · Eagle Grove-B | — | Eagle Grove-B | 22:14.11 | 21 |
| 22 | Luke McKennaPlace 22 · Algona | — | Algona | 22:14.55 | 22 |
| 23 | Zach LoertsPlace 23 · St Edmond | — | St Edmond | 22:15.00 | 23 |
| 24 | Evan DealPlace 24 · Algona | — | Algona | 22:16.00 | 24 |
| 25 | Elijah FinkPlace 25 · Hampton-Dumont | — | Hampton-Dumont | 22:18.00 | 25 |
| 26 | Alex FrakesPlace 26 · Eagle Grove-B | — | Eagle Grove-B | 22:24.00 | 26 |
| 27 | Gage RileyPlace 27 · Fort Dodge | — | Fort Dodge | 22:30.00 | 27 |
| 28 | Reece MartinPlace 28 · Roland Story | — | Roland Story | 22:34.00 | 28 |
| 29 | Xander WebbPlace 29 · Roland Story | — | Roland Story | 22:36.00 | 29 |
| 30 | Jonas JensenPlace 30 · Manson NW Webster | — | Manson NW Webster | 22:38.26 | — |
| 31 | Rick XuPlace 31 · St Edmond | — | St Edmond | 22:38.70 | 30 |
| 32 | Solomon BarbuPlace 32 · Hampton-Dumont | — | Hampton-Dumont | 22:45.00 | 31 |
| 33 | Chris LizamaPlace 33 · Eagle Grove-B | — | Eagle Grove-B | 22:49.00 | — |
| 34 | Daniel LeighPlace 34 · Fort Dodge | — | Fort Dodge | 22:58.00 | 32 |
| 35 | Anthony LacinaPlace 35 · St Edmond | — | St Edmond | 23:04.00 | 33 |
| 36 | Collin ByrdPlace 36 · Boone-B | — | Boone-B | 23:05.02 | 34 |
| 37 | Jaden ArmsteadPlace 37 · Eagle Grove-B | — | Eagle Grove-B | 23:05.37 | — |
| 38 | Grey WesterhoffPlace 38 · St Edmond | — | St Edmond | 23:05.76 | 35 |
| 39 | Wyatt SprecherPlace 39 · Southeast Valley | — | Southeast Valley | 23:06.00 | 36 |
| 40 | Lucas KornderPlace 40 · St Edmond | — | St Edmond | 23:08.18 | 37 |
| 41 | Gabe RollinsPlace 41 · Webster City | — | Webster City | 23:08.52 | 38 |
| 42 | Jaxson BielfeltPlace 42 · Boone-B | — | Boone-B | 23:08.94 | 39 |
| 43 | Patrick ReifPlace 43 · Webster City | — | Webster City | 23:12.00 | 40 |
| 44 | Braydon SmithPlace 44 · St Edmond | — | St Edmond | 23:13.00 | — |
| 45 | Cody BergPlace 45 · Webster City | — | Webster City | 23:15.00 | 41 |
| 46 | Lance TeeselinkPlace 46 · Eagle Grove-B | — | Eagle Grove-B | 23:18.11 | — |
| 47 | Ben BaileyPlace 47 · South Hamilton | — | South Hamilton | 23:18.77 | 42 |
| 48 | Alex NielsenPlace 48 · South Hamilton | — | South Hamilton | 23:19.13 | 43 |
| 49 | Logan IhlePlace 49 · Roland Story | — | Roland Story | 23:19.52 | 44 |
| 50 | Zack MertzPlace 50 · Humboldt | — | Humboldt | 23:27.00 | 45 |
| 51 | Gus ZweibohmerPlace 51 · Humboldt | — | Humboldt | 23:40.00 | 46 |
| 52 | Jaxon Bohan-MartinPlace 52 · Humboldt | — | Humboldt | 23:42.00 | 47 |
| 53 | Andrew BabcockPlace 53 · South Hamilton | — | South Hamilton | 23:47.00 | 48 |
| 54 | Bo BraddockPlace 54 · Boone-B | — | Boone-B | 23:48.58 | 49 |
| 55 | Alex GasparPlace 55 · Eagle Grove-B | — | Eagle Grove-B | 23:48.92 | — |
| 56 | Everette BeachPlace 56 · South Hamilton | — | South Hamilton | 23:54.00 | 50 |
| 57 | Kyle JohnsonPlace 57 · Southeast Valley | — | Southeast Valley | 23:55.00 | 51 |
| 58 | Trenten RhoadsPlace 58 · Hampton-Dumont | — | Hampton-Dumont | 24:13.00 | 52 |
| 59 | Joe TouneyPlace 59 · St Edmond | — | St Edmond | 24:18.00 | — |
| 60 | Levi OrigerPlace 60 · Roland Story | — | Roland Story | 24:25.00 | — |
| 61 | Ethan NadyPlace 61 · Roland Story | — | Roland Story | 24:26.00 | — |
| 62 | T HocrafferPlace 62 · Roland Story | — | Roland Story | 24:32.00 | — |
| 63 | Alexander HansenPlace 63 · Fort Dodge | — | Fort Dodge | 24:33.00 | 53 |
| 64 | Cael SchaferPlace 64 · Eagle Grove-B | — | Eagle Grove-B | 24:37.00 | — |
| 65 | Jaren ChristyPlace 65 · Fort Dodge | — | Fort Dodge | 24:40.00 | 54 |
| 66 | Noah RethmanPlace 66 · Eagle Grove-B | — | Eagle Grove-B | 24:46.00 | — |
| 67 | Cael SchreierPlace 67 · Roland Story | — | Roland Story | 24:49.00 | — |
| 68 | Mason NeelyPlace 68 · Boone-B | — | Boone-B | 24:53.00 | 55 |
| 69 | Derrecklee HarmsPlace 69 · Eagle Grove-B | — | Eagle Grove-B | 24:54.46 | — |
| 70 | Noah BrittenPlace 70 · Roland Story | — | Roland Story | 24:54.79 | — |
| 71 | Kaleb CalmerPlace 71 · Manson NW Webster | — | Manson NW Webster | 24:55.00 | — |
| 72 | Parker JohnsonPlace 72 · Southeast Valley | — | Southeast Valley | 24:56.00 | 56 |
| 73 | Thomas KlaverPlace 73 · Clarion-Goldfiel | — | Clarion-Goldfiel | 24:58.00 | — |
| 74 | Korbin JensenPlace 74 · Manson NW Webster | — | Manson NW Webster | 25:10.60 | — |
| 75 | Alex WesselsPlace 75 · Belmond Klemme | — | Belmond Klemme | 25:10.92 | 57 |
| 76 | Ty KlattPlace 76 · Southeast Valley | — | Southeast Valley | 25:12.00 | 58 |
| 77 | Colby DotzlerPlace 77 · Boone-B | — | Boone-B | 25:19.00 | 59 |
| 78 | Carter RialPlace 78 · St Edmond | — | St Edmond | 25:24.00 | — |
| 79 | CJ TresemerPlace 79 · Roland Story | — | Roland Story | 25:26.00 | — |
| 80 | Nolan JacksonPlace 80 · Southeast Valley | — | Southeast Valley | 25:42.00 | 60 |
| 81 | Landon StonePlace 81 · Manson NW Webster | — | Manson NW Webster | 25:47.00 | — |
| 82 | Noah ShaverPlace 82 · Hampton-Dumont | — | Hampton-Dumont | 25:54.00 | 61 |
| 83 | Carter CaseyPlace 83 · Algona | — | Algona | 25:55.00 | 62 |
| 84 | Jared YoderPlace 84 · Fort Dodge | — | Fort Dodge | 25:56.00 | 63 |
| 85 | Brandon PowersPlace 85 · Roland Story | — | Roland Story | 26:02.00 | — |
| 86 | Sam SirnaPlace 86 · Roland Story | — | Roland Story | 26:06.00 | — |
| 87 | Mason BaberPlace 87 · Boone-B | — | Boone-B | 26:12.00 | 64 |
| 88 | Owen McNuttPlace 88 · Hampton-Dumont | — | Hampton-Dumont | 26:15.00 | 65 |
| 89 | George VilaPlace 89 · Webster City | — | Webster City | 26:22.00 | 66 |
| 90 | Dalton ClarkPlace 90 · Belmond Klemme | — | Belmond Klemme | 26:33.00 | 67 |
| 91 | Jesse RechkemmerPlace 91 · Roland Story | — | Roland Story | 26:34.00 | — |
| 92 | Jackson BeiselPlace 92 · Clarion-Goldfiel | — | Clarion-Goldfiel | 26:37.00 | — |
| 93 | Mager MillerPlace 93 · Boone-B | — | Boone-B | 26:48.00 | 68 |
| 94 | Jose LizamaPlace 94 · Eagle Grove-B | — | Eagle Grove-B | 26:52.00 | — |
| 95 | Dylan McKinleyPlace 95 · Roland Story | — | Roland Story | 26:53.00 | — |
| 96 | Caleb JacobsenPlace 96 · Clarion-Goldfiel | — | Clarion-Goldfiel | 26:58.00 | — |
| 97 | Sam SytsmaPlace 97 · Southeast Valley | — | Southeast Valley | 27:11.00 | 69 |
| 98 | Joshua MaddenPlace 98 · Fort Dodge | — | Fort Dodge | 27:14.00 | 70 |
| 99 | Teagan TraskPlace 99 · South Hamilton | — | South Hamilton | 27:16.00 | — |
| 100 | Webster CityPlace 100 · 27:32.00 | — | 27:32.00 | 71 | — |
| 104 | AlgonaPlace 104 · 28:07.00 | — | 28:07.00 | 72 | — |
| 105 | Fort DodgePlace 105 · 28:21.00 | — | 28:21.00 | 73 | — |
| 106 | Belmond KlemmePlace 106 · 28:35.00 | — | 28:35.00 | 74 | — |
| 107 | Belmond KlemmePlace 107 · 28:41.00 | — | 28:41.00 | 75 | — |
| 108 | Hampton-DumontPlace 108 · 28:52.00 | — | 28:52.00 | 76 | — |
| 112 | Hampton-DumontPlace 112 · 29:37.00 | — | 29:37.00 | 77 | — |
| 113 | Belmond KlemmePlace 113 · 30:01.00 | — | 30:01.00 | 78 | — |
| 116 | Southeast ValleyPlace 116 · 30:37.00 | — | 30:37.00 | 79 | — |
| 117 | Belmond KlemmePlace 117 · 30:38.00 | — | 30:38.00 | 80 | — |
| 125 | Webster CityPlace 125 · 41:27.00 | — | 41:27.00 | 81 | — |