| 1 | Ethan RobertsPlace 1 · Grade 10 · Ames | 10 | Ames | 19:07.6 |
| 2 | Mason LabbyPlace 2 · Grade 12 · Mason City | 12 | Mason City | 19:20.9 |
| 3 | Wyatt HannapelPlace 3 · Grade 10 · Ames | 10 | Ames | 19:38.3 |
| 4 | Agustin Diaz de Leon-CisnerosPlace 4 · Grade 10 · Ames | 10 | Ames | 19:39.0 |
| 5 | Malachi WarrenPlace 5 · Grade 9 · Ames | 9 | Ames | 19:39.7 |
| 6 | Ben BoyerPlace 6 · Grade 9 · Mason City | 9 | Mason City | 19:43.8 |
| 7 | Aaron KmochPlace 7 · Grade 10 · Mason City | 10 | Mason City | 19:45.8 |
| 8 | Archer NiemiPlace 8 · Grade 10 · Ames | 10 | Ames | 19:50.2 PR |
| 9 | Zerik NicholsonPlace 9 · Grade 12 · Mason City | 12 | Mason City | 19:53.4 |
| 10 | Jonathan SteinPlace 10 · Grade 11 · Ames | 11 | Ames | 19:55.2 |
| 11 | Wouter ReulingPlace 11 · Grade 12 · Waverly-Shell Rock | 12 | Waverly-Shell Rock | 20:01.5 |
| 12 | Ambrose LuongPlace 12 · Grade 11 · Mason City | 11 | Mason City | 20:05.5 |
| 13 | Tate TerpstraPlace 13 · Grade 10 · Ames | 10 | Ames | 20:08.2 |
| 14 | Kaden LeePlace 14 · Grade 10 · Lake Mills | 10 | Lake Mills | 20:12.5 |
| 15 | Leif TeplyPlace 15 · Grade 9 · Ames | 9 | Ames | 20:12.9 PR |
| 16 | Anthony FeldhakePlace 16 · Grade 12 · Waverly-Shell Rock | 12 | Waverly-Shell Rock | 20:22.3 |
| 17 | Evan HowePlace 17 · Grade 10 · Mason City | 10 | Mason City | 20:24.8 |
| 18 | Arrow AllenPlace 18 · Grade 10 · Ames | 10 | Ames | 20:24.9 |
| 19 | Elija RattayPlace 19 · Grade 11 · Mason City | 11 | Mason City | 20:29.8 |
| 20 | Kuach KuachPlace 20 · Grade 12 · Ames | 12 | Ames | 20:34.4 PR |
| 21 | Aleksandr MautonPlace 21 · Grade 9 · Ames | 9 | Ames | 20:35.8 |
| 22 | Mac CochranPlace 22 · Grade 12 · Ames | 12 | Ames | 20:40.8 |
| 23 | Jonathan PaytonPlace 23 · Grade 9 · Ames | 9 | Ames | 20:42.3 |
| 24 | Jaxson Lowrey-jonesPlace 24 · Grade 12 · Fort Dodge | 12 | Fort Dodge | 20:44.7 |
| 25 | Josh ByersPlace 25 · Grade 9 · Waverly-Shell Rock | 9 | Waverly-Shell Rock | 20:49.4 |
| 26 | Daniel Murillo-DelfinPlace 26 · Grade 10 · Webster City | 10 | Webster City | 21:03.7 |
| 27 | Brady CorleyPlace 27 · Grade 12 · Waverly-Shell Rock | 12 | Waverly-Shell Rock | 21:08.2 |
| 28 | Ian ShriverPlace 28 · Grade 10 · Ames | 10 | Ames | 21:10.1 |
| 29 | Ben ChristensenPlace 29 · Grade 9 · Waverly-Shell Rock | 9 | Waverly-Shell Rock | 21:10.7 |
| 30 | Lincoln LorenzenPlace 30 · Grade 10 · Waverly-Shell Rock | 10 | Waverly-Shell Rock | 21:11.9 |
| 31 | Levi GangwishPlace 31 · Grade 11 · Mason City | 11 | Mason City | 21:14.4 |
| 32 | Siwon ParkPlace 32 · Grade 10 · Ames | 10 | Ames | 21:20.9 PR |
| 33 | Micah SkogenPlace 33 · Grade 9 · Lake Mills | 9 | Lake Mills | 21:22.7 |
| 34 | Aiden ReesePlace 34 · Grade 9 · Lake Mills | 9 | Lake Mills | 21:23.8 |
| 35 | Andrii KozhukharPlace 35 · Grade 11 · Garner-Hayfield-Ventura | 11 | Garner-Hayfield-Ventura | 21:31.3 |
| 36 | Peter HardeePlace 36 · Grade 12 · Mason City | 12 | Mason City | 21:31.7 |
| 37 | Jack BakerPlace 37 · Grade 12 · Ames | 12 | Ames | 21:34.2 |
| 38 | Eli SchragPlace 38 · Grade 12 · Ames | 12 | Ames | 21:34.3 |
| 39 | Kiefer PughPlace 39 · Grade 12 · Waverly-Shell Rock | 12 | Waverly-Shell Rock | 21:34.4 |
| 40 | Colten BettsPlace 40 · Grade 10 · Webster City | 10 | Webster City | 21:37.7 |
| 41 | Arlo SivesindPlace 41 · Grade 9 · Ames | 9 | Ames | 21:39.6 |
| 42 | Jackson UthePlace 42 · Grade 11 · Ames | 11 | Ames | 21:45.8 |
| 43 | Brody McDonoughPlace 43 · Grade 10 · Mason City | 10 | Mason City | 21:46.9 |
| 44 | Riley BeitelPlace 44 · Grade 11 · Mason City | 11 | Mason City | 21:47.0 |
| 45 | Grayson JonesPlace 45 · Grade 9 · Waverly-Shell Rock | 9 | Waverly-Shell Rock | 21:47.4 |
| 46 | Aiden BeitelPlace 46 · Grade 9 · Mason City | 9 | Mason City | 21:50.0 |
| 47 | Harrison ChenPlace 47 · Grade 9 · Ames | 9 | Ames | 21:50.2 |
| 48 | Logan DodgePlace 48 · Grade 10 · Mason City | 10 | Mason City | 21:50.9 |
| 49 | Sam RezendesPlace 49 · Grade 10 · Mason City | 10 | Mason City | 21:51.1 |
| 50 | Ashton LauterPlace 50 · Grade 9 · Ames | 9 | Ames | 21:54.3 |
| 51 | Owen CaldwellPlace 51 · Grade 12 · Ames | 12 | Ames | 22:10.5 |
| 52 | Nyier ChuolPlace 52 · Grade 12 · Ames | 12 | Ames | 22:25.2 PR |
| 53 | Nathan RileyPlace 53 · Grade 10 · Ames | 10 | Ames | 22:30.3 |
| 54 | Arman GolchinPlace 54 · Grade 9 · Ames | 9 | Ames | 22:32.2 |
| 55 | Ray MoorePlace 55 · Grade 9 · Ames | 9 | Ames | 22:35.5 |
| 56 | Noah OlsonPlace 56 · Grade 9 · Mason City | 9 | Mason City | 22:37.5 |
| 57 | Leif MinionPlace 57 · Grade 10 · Ames | 10 | Ames | 22:50.6 |
| 58 | Case CaspersonPlace 58 · Grade 11 · Lake Mills | 11 | Lake Mills | 22:52.0 |
| 59 | Owen GruverPlace 59 · Grade 12 · Fort Dodge | 12 | Fort Dodge | 22:55.1 |
| 60 | Braeden WatersPlace 60 · Grade 10 · Mason City | 10 | Mason City | 22:58.9 |
| 61 | Owen AndersonPlace 61 · Grade 9 · Webster City | 9 | Webster City | 22:59.9 |
| 62 | TJ DouglasPlace 62 · Grade 12 · Ames | 12 | Ames | 23:02.4 |
| 63 | Zach ZartPlace 63 · Grade 12 · Waverly-Shell Rock | 12 | Waverly-Shell Rock | 23:02.9 |
| 64 | Grayson HendersonPlace 64 · Grade 10 · Webster City | 10 | Webster City | 23:03.6 |
| 65 | Corbin PostPlace 65 · Grade 9 · Waverly-Shell Rock | 9 | Waverly-Shell Rock | 23:06.6 |
| 66 | Gunner FryPlace 66 · Grade 11 · Garner-Hayfield-Ventura | 11 | Garner-Hayfield-Ventura | 23:09.6 |
| 67 | Jace SuntkenPlace 67 · Grade 12 · Newman Catholic Mason City | 12 | Newman Catholic Mason City | 23:13.0 |
| 68 | Jamie TinajeroPlace 68 · Grade 11 · Mason City | 11 | Mason City | 23:13.2 |
| 69 | Aiden MohanPlace 69 · Grade 9 · Waverly-Shell Rock | 9 | Waverly-Shell Rock | 23:17.3 |
| 70 | Matthew WillmsPlace 70 · Grade 9 · Waverly-Shell Rock | 9 | Waverly-Shell Rock | 23:17.5 |
| 71 | Jackson DiekmannPlace 71 · Grade 12 · Ames | 12 | Ames | 23:27.8 |
| 72 | Julian BraunPlace 72 · Grade 10 · Ames | 10 | Ames | 23:38.6 |
| 73 | Brendan FosterPlace 73 · Grade 10 · Ames | 10 | Ames | 23:39.1 |
| 74 | Kameron CaseyPlace 74 · Grade 11 · Mason City | 11 | Mason City | 23:45.0 |
| 75 | Sithiru MallawaarachchiPlace 75 · Grade 11 · Ames | 11 | Ames | 24:08.7 |
| 76 | Alyosha EvansPlace 76 · Grade 10 · Ames | 10 | Ames | 24:08.8 |
| 77 | Xavier McNichollPlace 77 · Grade 12 · Ames | 12 | Ames | 24:09.8 PR |
| 78 | Roy HoangPlace 78 · Grade 10 · Belmond-Klemme | 10 | Belmond-Klemme | 24:17.9 |
| 79 | Adam BakerPlace 79 · Grade 11 · Ames | 11 | Ames | 24:19.4 |
| 80 | Jonathan NessenPlace 80 · Grade 11 · Garner-Hayfield-Ventura | 11 | Garner-Hayfield-Ventura | 24:20.2 |
| 81 | Emmanuel IddrisuPlace 81 · Grade 12 · Hampton-Dumont-CAL | 12 | Hampton-Dumont-CAL | 24:23.3 |
| 82 | Jose VasquezPlace 82 · Grade 9 · Belmond-Klemme | 9 | Belmond-Klemme | 24:27.5 |
| 83 | William McDeidPlace 83 · Grade 11 · Ames | 11 | Ames | 24:28.1 |
| 84 | Mason DeurPlace 84 · Grade 10 · Waverly-Shell Rock | 10 | Waverly-Shell Rock | 24:31.1 |
| 85 | Austin CarmodyPlace 85 · Grade 9 · Fort Dodge | 9 | Fort Dodge | 24:38.4 PR |
| 86 | Isaiah GrimPlace 86 · Grade 10 · Fort Dodge | 10 | Fort Dodge | 24:40.1 |
| 87 | Evan NelsonPlace 87 · Grade 12 · Ames | 12 | Ames | 24:46.0 |
| 88 | Elias PowersPlace 88 · Grade 9 · Fort Dodge | 9 | Fort Dodge | 24:47.1 |
| 89 | Adrian Antonio LopezPlace 89 · Grade 10 · Des Moines North | 10 | Des Moines North | 24:58.4 |
| 90 | Jovanny CamarilloPlace 90 · Grade 12 · Hampton-Dumont-CAL | 12 | Hampton-Dumont-CAL | 25:18.3 |
| 91 | Julian VegaPlace 91 · Grade 11 · Des Moines North | 11 | Des Moines North | 25:28.7 |
| 92 | Connor DrakePlace 92 · Grade 10 · Ames | 10 | Ames | 25:31.5 |
| 93 | Carl BigelowPlace 93 · Grade 10 · Ames | 10 | Ames | 25:33.1 |
| 94 | Benjamin McCoyPlace 94 · Grade 9 · Ames | 9 | Ames | 25:39.2 |
| 95 | Sam SchwarzPlace 95 · Grade 12 · Mason City | 12 | Mason City | 25:40.4 |
| 96 | Korbin BouskaPlace 96 · Grade 11 · Waverly-Shell Rock | 11 | Waverly-Shell Rock | 25:45.6 |
| 97 | Jonathan ZamoraPlace 97 · Grade 11 · Hampton-Dumont-CAL | 11 | Hampton-Dumont-CAL | 25:53.4 |
| 98 | Ayden DeckerPlace 98 · Grade 10 · Mason City | 10 | Mason City | 25:53.5 |
| 99 | Klayton PlaggePlace 99 · Grade 9 · Hampton-Dumont-CAL | 9 | Hampton-Dumont-CAL | 25:53.9 |
| 100 | Brayden KammererPlace 100 · Grade 12 · Fort Dodge | 12 | Fort Dodge | 26:01.2 |
| 101 | Kenneth BaiPlace 101 · Grade 12 · Ames | 12 | Ames | 26:05.9 |
| 102 | Jack CarlatPlace 102 · Grade 9 · Ames | 9 | Ames | 26:11.3 |
| 103 | Jonathan CasciatoPlace 103 · Grade 9 · Fort Dodge | 9 | Fort Dodge | 26:22.5 |
| 104 | Jaylin RocquemorePlace 104 · Grade 12 · Waterloo East | 12 | Waterloo East | 26:53.9 PR |
| 105 | Ben YoungdalePlace 105 · Grade 12 · Webster City | 12 | Webster City | 27:02.1 |
| 106 | Johnkely KolaciaPlace 106 · Grade 9 · Ames | 9 | Ames | 27:02.3 |
| 107 | Joseph StonePlace 107 · Grade 11 · Ames | 11 | Ames | 27:14.7 |
| 108 | Jonas DahlenPlace 108 · Grade 12 · Waterloo East | 12 | Waterloo East | 27:22.6 |
| 109 | Gustav DeVriesPlace 109 · Grade 10 · Waverly-Shell Rock | 10 | Waverly-Shell Rock | 27:29.1 |
| 110 | Jacob GoodmanPlace 110 · Grade 12 · Ames | 12 | Ames | 27:52.3 |
| 111 | Cooper KetelsenPlace 111 · Grade 10 · Mason City | 10 | Mason City | 27:56.0 PR |
| 112 | Jordan EvansPlace 112 · Grade 9 · Ames | 9 | Ames | 28:11.3 |
| 113 | Colton RichardsonPlace 113 · Grade 10 · Mason City | 10 | Mason City | 28:14.6 |
| 114 | Immanuel YleisaPlace 114 · Grade 10 · Des Moines North | 10 | Des Moines North | 28:44.0 |
| 115 | Jaxin LoughryPlace 115 · Grade 9 · Webster City | 9 | Webster City | 28:48.8 |
| 116 | Sebastian Guido-HernandezPlace 116 · Grade 9 · Belmond-Klemme | 9 | Belmond-Klemme | 28:52.2 |
| 117 | Collin McCambridgePlace 117 · Grade 10 · Mason City | 10 | Mason City | 29:06.5 |
| 118 | Gustavo Velazquez-AlvarezPlace 118 · Grade 11 · Des Moines North | 11 | Des Moines North | 29:37.5 PR |
| 119 | Kloh DuePlace 119 · Grade 12 · Des Moines North | 12 | Des Moines North | 29:37.7 PR |
| 120 | Arsen KaragaevPlace 120 · Grade 10 · Ames | 10 | Ames | 29:55.3 |
| 121 | Adrian StonePlace 121 · Grade 9 · Ames | 9 | Ames | 29:56.0 |
| 122 | Gustavo Perez-PugaPlace 122 · Grade 11 · Des Moines North | 11 | Des Moines North | 29:56.7 |
| 123 | Alex Rivera-MendezPlace 123 · Grade 9 · Des Moines North | 9 | Des Moines North | 30:19.0 PR |
| 124 | Jace PitzenbergerPlace 124 · Grade 9 · Newman Catholic Mason City | 9 | Newman Catholic Mason City | 30:46.9 |
| 125 | Parker HitchensPlace 125 · Grade 10 · Ames | 10 | Ames | 30:59.4 |
| 126 | Jabdiel Rodriguez-RoldanPlace 126 · Grade 9 · Des Moines North | 9 | Des Moines North | 31:33.0 |
| 127 | Killian RobinsonPlace 127 · Grade 9 · Des Moines North | 9 | Des Moines North | 31:34.9 |