| 1 | Joshua KnoblochPlace 1 · Grade 10 · Highland | 10 | Highland | 15:41.50 |
| 2 | Lucas AbbottPlace 2 · Grade 11 · Edwardsville (Metro-East Lutheran) | 11 | Edwardsville (Metro-East Lutheran) | 15:51.40 |
| 3 | Caleb KnoblochPlace 3 · Grade 10 · Highland | 10 | Highland | 15:53.60 |
| 4 | Mark RozhonPlace 4 · Grade 12 · Freeburg | 12 | Freeburg | 16:03.10 |
| 5 | Luke SmithPlace 5 · Grade 10 · Waterloo | 10 | Waterloo | 16:06.20 |
| 6 | Tyler DeVilderPlace 6 · Grade 11 · Waterloo | 11 | Waterloo | 16:07.10 |
| 7 | Hank McclainePlace 7 · Grade 12 · Alton | 12 | Alton | 16:13.50 |
| 8 | Adam JansenPlace 8 · Grade 11 · Belleville (Althoff Catholic) | 11 | Belleville (Althoff Catholic) | 16:14.80 |
| 9 | Donnie MillerPlace 9 · Grade 12 · Highland | 12 | Highland | 16:19.50 |
| 10 | Dean HemmerPlace 10 · Grade 11 · Edwardsville (Metro-East Lutheran) | 11 | Edwardsville (Metro-East Lutheran) | 16:26.20 |
| 11 | Caden MeierPlace 11 · Grade 10 · Troy (Triad) | 10 | Troy (Triad) | 16:28.50 |
| 12 | Zachary DuffiePlace 12 · Grade 12 · Freeburg | 12 | Freeburg | 16:35.30 |
| 13 | Michael SchramPlace 13 · Grade 11 · Troy (Triad) | 11 | Troy (Triad) | 16:37.50 |
| 14 | Connor SchmidtPlace 14 · Grade 12 · Glen Carbon (Father McGivney) | 12 | Glen Carbon (Father McGivney) | 16:51.00 |
| 15 | Henry ReiseckPlace 15 · Grade 10 · Edwardsville (Metro-East Lutheran) | 10 | Edwardsville (Metro-East Lutheran) | 16:57.00 |
| 16 | Ben HelfrichPlace 16 · Grade 12 · Alton | 12 | Alton | 16:59.20 |
| 17 | Wynn WilsonPlace 17 · Grade 10 · Greenville | 10 | Greenville | 17:02.60 |
| 18 | Samuel SkirballPlace 18 · Grade 10 · Troy (Triad) | 10 | Troy (Triad) | 17:02.60 |
| 19 | Gavin WoolvertonPlace 19 · Grade 11 · Troy (Triad) | 11 | Troy (Triad) | 17:09.00 |
| 20 | Nolan EngstromPlace 20 · Grade 10 · Litchfield | 10 | Litchfield | 17:16.90 |
| 21 | Dawson RueterPlace 21 · Grade 10 · Breese (Central) | 10 | Breese (Central) | 17:19.10 |
| 22 | Luke BrightPlace 22 · Grade 10 · Edwardsville (Metro-East Lutheran) | 10 | Edwardsville (Metro-East Lutheran) | 17:19.40 |
| 23 | Kaden StrohbeckPlace 23 · Grade 11 · Jerseyville (Jersey) | 11 | Jerseyville (Jersey) | 17:22.10 |
| 24 | Nile DiehlPlace 24 · Grade 10 · Troy (Triad) | 10 | Troy (Triad) | 17:23.90 |
| 25 | Chase WagenknechtPlace 25 · Grade 12 · Waterloo | 12 | Waterloo | 17:29.00 |
| 26 | Walker NehrtPlace 26 · Grade 11 · Highland | 11 | Highland | 17:35.10 |
| 27 | Chase LadingPlace 27 · Grade 10 · Maryville (M. Christian) | 10 | Maryville (M. Christian) | 17:35.80 |
| 28 | Tyler ButlerPlace 28 · Grade 12 · Jacksonville | 12 | Jacksonville | 17:36.20 |
| 29 | Wyatt GoecknerPlace 29 · Grade 12 · Edwardsville (Metro-East Lutheran) | 12 | Edwardsville (Metro-East Lutheran) | 17:37.70 |
| 30 | Liam PriestPlace 30 · Grade 11 · Highland | 11 | Highland | 17:41.10 |
| 31 | LeBron ReedPlace 31 · Grade 12 · Wood River (East Alton-W.R.) | 12 | Wood River (East Alton-W.R.) | 17:42.10 |
| 32 | Robert HoferPlace 32 · Grade 12 · Breese (Central) | 12 | Breese (Central) | 17:42.50 |
| 33 | Carter RichPlace 33 · Grade 9 · Troy (Triad) | 9 | Troy (Triad) | 17:42.70 |
| 34 | Robby RossPlace 34 · Grade 11 · Freeburg | 11 | Freeburg | 17:43.80 |
| 35 | Aidan SchmidtPlace 35 · Grade 12 · Glen Carbon (Father McGivney) | 12 | Glen Carbon (Father McGivney) | 17:48.30 |
| 36 | Keaton SmithPlace 36 · Grade 11 · Freeburg | 11 | Freeburg | 17:53.40 |
| 37 | Jett MorriseyPlace 37 · Grade 10 · Jacksonville | 10 | Jacksonville | 17:53.60 |
| 38 | Ben NeunerPlace 38 · Grade 11 · Troy (Triad) | 11 | Troy (Triad) | 17:56.10 |
| 39 | Alex MoorePlace 39 · Grade 10 · Troy (Triad) | 10 | Troy (Triad) | 17:58.60 |
| 40 | Ethan BeckerPlace 40 · Grade 11 · Breese (Mater Dei) | 11 | Breese (Mater Dei) | 18:04.40 |
| 41 | Elijah LittlePlace 41 · Grade 12 · Cahokia | 12 | Cahokia | 18:06.40 |
| 42 | Eli GermannPlace 42 · Grade 11 · Glen Carbon (Father McGivney) | 11 | Glen Carbon (Father McGivney) | 18:07.60 |
| 43 | Hubert WearyPlace 43 · Grade 10 · Columbia | 10 | Columbia | 18:09.70 |
| 44 | Luke ChristPlace 44 · Grade 12 · Freeburg | 12 | Freeburg | 18:13.50 |
| 45 | Rutger ListerPlace 45 · Grade 11 · Waterloo | 11 | Waterloo | 18:14.30 |
| 46 | Wyatt NoltePlace 46 · Grade 11 · Waterloo | 11 | Waterloo | 18:15.80 |
| 47 | Ben HeppermannPlace 47 · Grade 10 · Freeburg | 10 | Freeburg | 18:16.20 |
| 48 | Trigg GoestenkorsPlace 48 · Grade 10 · Breese (Central) | 10 | Breese (Central) | 18:17.90 |
| 49 | Isaiah CooperPlace 49 · Grade 9 · Alton | 9 | Alton | 18:21.80 |
| 50 | Reggie GriffithPlace 50 · Grade 12 · Cahokia | 12 | Cahokia | 18:23.30 |
| 51 | Henry MathesPlace 51 · Grade 9 · Glen Carbon (Father McGivney) | 9 | Glen Carbon (Father McGivney) | 18:28.00 |
| 52 | Andrew SchumacherPlace 52 · Grade 11 · Jacksonville | 11 | Jacksonville | 18:28.90 |
| 53 | Grant JarosPlace 53 · Grade 10 · Troy (Triad) | 10 | Troy (Triad) | 18:29.30 |
| 54 | Will GreenPlace 54 · Grade 10 · Jerseyville (Jersey) | 10 | Jerseyville (Jersey) | 18:30.70 |
| 55 | Cam EdwardsPlace 55 · Grade 12 · Breese (Mater Dei) | 12 | Breese (Mater Dei) | 18:35.40 |
| 56 | Keegan KohlbrecherPlace 56 · Grade 12 · Breese (Mater Dei) | 12 | Breese (Mater Dei) | 18:38.20 |
| 57 | Hunter HayesPlace 57 · Grade 12 · Jacksonville | 12 | Jacksonville | 18:40.70 |
| 58 | William CookPlace 58 · Grade 10 · Freeburg | 10 | Freeburg | 18:41.00 |
| 59 | Britton ClayPlace 59 · Grade 11 · Jacksonville | 11 | Jacksonville | 18:48.40 |
| 60 | Grayson ClementsPlace 60 · Grade 12 · Highland | 12 | Highland | 18:49.30 |
| 61 | Zane GrummelPlace 61 · Grade 9 · Jerseyville (Jersey) | 9 | Jerseyville (Jersey) | 18:52.50 |
| 62 | Jack DeistPlace 62 · Grade 11 · Jerseyville (Jersey) | 11 | Jerseyville (Jersey) | 18:58.40 |
| 63 | Hudson AllenPlace 63 · Grade 9 · Jacksonville | 9 | Jacksonville | 19:00.00 |
| 64 | Austin JonesPlace 64 · Grade 10 · Alton | 10 | Alton | 19:00.90 |
| 65 | Xavier KnappPlace 65 · Grade 11 · Breese (Central) | 11 | Breese (Central) | 19:05.10 |
| 66 | Cannon HensiekPlace 66 · Grade 9 · Waterloo | 9 | Waterloo | 19:05.80 |
| 67 | Ren GilbertPlace 67 · Grade 9 · Waterloo | 9 | Waterloo | 19:06.40 |
| 68 | Tucker KrusePlace 68 · Grade 10 · Troy (Triad) | 10 | Troy (Triad) | 19:12.10 |
| 69 | Jake WilsonPlace 69 · Grade 10 · Litchfield | 10 | Litchfield | 19:16.40 |
| 70 | Rhys WheelanPlace 70 · Grade 11 · Breese (Mater Dei) | 11 | Breese (Mater Dei) | 19:17.00 |
| 71 | Luca DerrickPlace 71 · Grade 9 · Jerseyville (Jersey) | 9 | Jerseyville (Jersey) | 19:17.10 |
| 72 | Colton SmithPlace 72 · Grade 9 · Jerseyville (Jersey) | 9 | Jerseyville (Jersey) | 19:17.90 |
| 73 | Andrew LeonelliPlace 73 · Grade 10 · Glen Carbon (Father McGivney) | 10 | Glen Carbon (Father McGivney) | 19:18.00 |
| 74 | Alex GummersheimerPlace 74 · Grade 10 · Columbia | 10 | Columbia | 19:18.10 |
| 75 | Elijah BallPlace 75 · Grade 10 · Edwardsville (Metro-East Lutheran) | 10 | Edwardsville (Metro-East Lutheran) | 19:21.60 |
| 76 | Kaiden WheelerPlace 76 · Grade 11 · Lebanon | 11 | Lebanon | 19:29.60 |
| 77 | Fisher EllisPlace 77 · Grade 9 · Litchfield | 9 | Litchfield | 19:31.80 |
| 78 | Landon PrachtPlace 78 · Grade 10 · Belleville (Althoff Catholic) | 10 | Belleville (Althoff Catholic) | 19:32.70 |
| 79 | Gabe TheimsPlace 79 · Grade 11 · Glen Carbon (Father McGivney) | 11 | Glen Carbon (Father McGivney) | 19:34.50 |
| 80 | Jo Jo FlemingPlace 80 · Grade 10 · Trenton (Wesclin) | 10 | Trenton (Wesclin) | 19:40.80 |
| 81 | Zach SmithPlace 81 · Grade 12 · Highland | 12 | Highland | 19:41.30 |
| 82 | Jack DonaldPlace 82 · Grade 10 · Maryville (M. Christian) | 10 | Maryville (M. Christian) | 19:42.90 |
| 83 | Elias ClarkPlace 83 · Grade 11 · Alton | 11 | Alton | 19:46.40 |
| 84 | Adin RoachPlace 84 · Grade 12 · Highland | 12 | Highland | 19:47.50 |
| 85 | Ezra PflegerPlace 85 · Grade 9 · Alton | 9 | Alton | 19:49.50 |
| 86 | Blase GilbrethPlace 86 · Grade 10 · Freeburg | 10 | Freeburg | 19:50.80 |
| 87 | Jonah VelnoskyPlace 87 · Grade 12 · Columbia | 12 | Columbia | 19:51.30 |
| 88 | Kristopher TurnbaughPlace 88 · Grade 12 · Jerseyville (Jersey) | 12 | Jerseyville (Jersey) | 19:53.00 |
| 89 | Gabriel JinksPlace 89 · Grade 9 · Alton | 9 | Alton | 19:58.10 |
| 90 | Darviontez ClarkPlace 90 · Grade 9 · Cahokia | 9 | Cahokia | 19:58.60 |
| 91 | Jaxson CarverPlace 91 · Grade 11 · Waterloo | 11 | Waterloo | 19:58.90 |
| 92 | Anthony TannousPlace 92 · Grade 11 · Waterloo | 11 | Waterloo | 20:01.50 |
| 93 | Evan LaughlinPlace 93 · Grade 10 · Greenville | 10 | Greenville | 20:05.10 |
| 94 | Walker DixonPlace 94 · Grade 9 · Waterloo | 9 | Waterloo | 20:14.10 |
| 95 | Ja'marcus AgnewPlace 95 · Grade 12 · Cahokia | 12 | Cahokia | 20:14.90 |
| 96 | Owen OsbornPlace 96 · Grade 9 · Freeburg | 9 | Freeburg | 20:16.00 |
| 97 | Nic MuscarelloPlace 97 · Grade 9 · Breese (Mater Dei) | 9 | Breese (Mater Dei) | 20:23.10 |
| 98 | Joshua HuberPlace 98 · Grade 9 · Glen Carbon (Father McGivney) | 9 | Glen Carbon (Father McGivney) | 20:24.70 |
| 99 | Adam GillisonPlace 99 · Grade 12 · Highland | 12 | Highland | 20:36.70 |
| 100 | Undray WebbPlace 100 · Grade 12 · Cahokia | 12 | Cahokia | 20:39.30 |
| 101 | Gustavo AlcazarPlace 101 · Grade 10 · Alton | 10 | Alton | 20:40.70 |
| 102 | Owen PadfieldPlace 102 · Grade 11 · Trenton (Wesclin) | 11 | Trenton (Wesclin) | 20:41.90 |
| 103 | Silas SwickPlace 103 · Grade 10 · Maryville (M. Christian) | 10 | Maryville (M. Christian) | 20:46.20 |
| 104 | Zander DemelloPlace 104 · Grade 9 · Lebanon | 9 | Lebanon | 20:49.00 |
| 105 | Amjad AdamsPlace 105 · Grade 9 · Lebanon | 9 | Lebanon | 20:49.90 |
| 106 | James BrowningPlace 106 · Grade 9 · Columbia | 9 | Columbia | 20:55.10 |
| 107 | Dominic LavinPlace 107 · Grade 9 · Breese (Central) | 9 | Breese (Central) | 21:12.20 |
| 108 | Jackson EhrmanPlace 108 · Grade 12 · Glen Carbon (Father McGivney) | 12 | Glen Carbon (Father McGivney) | 21:16.50 |
| 109 | Aaron GinesPlace 109 · Grade 10 · Cahokia | 10 | Cahokia | 21:30.20 |
| 110 | Elijah HartmannPlace 110 · Grade 9 · Alton | 9 | Alton | 21:36.50 |
| 111 | Raymond McElligottPlace 111 · Grade 10 · Jerseyville (Jersey) | 10 | Jerseyville (Jersey) | 21:37.90 |
| 112 | Jeremiah LittlePlace 112 · Grade 10 · Cahokia | 10 | Cahokia | 21:46.70 |
| 113 | Dane KohlbrecherPlace 113 · Grade 9 · Breese (Mater Dei) | 9 | Breese (Mater Dei) | 21:46.70 |
| 114 | Taven WardeinPlace 114 · Grade 12 · Wood River (East Alton-W.R.) | 12 | Wood River (East Alton-W.R.) | 21:47.10 |
| 115 | Corbin CerminnPlace 115 · Grade 12 · Columbia | 12 | Columbia | 22:06.40 |
| 116 | Ben ParkerPlace 116 · Grade 10 · Columbia | 10 | Columbia | 22:08.20 |
| 117 | Will SchneckPlace 117 · Grade 9 · Greenville | 9 | Greenville | 22:10.50 |
| 118 | Curtis JohnsonPlace 118 · Grade 10 · Cahokia | 10 | Cahokia | 22:11.90 |
| 119 | Braxton KiefferPlace 119 · Grade 12 · Litchfield | 12 | Litchfield | 22:17.40 |
| 120 | Ezra VanmiddendorpPlace 120 · Grade 10 · Greenville | 10 | Greenville | 22:21.10 PR |
| 121 | Lucien QuartonPlace 121 · Grade 12 · Litchfield | 12 | Litchfield | 22:30.50 |
| 122 | Oliver PhillipsPlace 122 · Grade 9 · Alton | 9 | Alton | 22:35.10 |
| 123 | Evan DrennanPlace 123 · Grade 10 · Highland | 10 | Highland | 23:33.70 |
| 124 | Chase HeimannPlace 124 · Grade 10 · Breese (Central) | 10 | Breese (Central) | 23:57.40 |
| 125 | Dawson HemkenPlace 125 · Grade 10 · Litchfield | 10 | Litchfield | 24:00.40 |
| 126 | Jackson KrackPlace 126 · Grade 9 · Breese (Central) | 9 | Breese (Central) | 24:25.70 |
| 127 | Nathan WheelerPlace 127 · Grade 9 · Lebanon | 9 | Lebanon | 24:31.70 |
| 128 | Alex OkalPlace 128 · Grade 9 · Lebanon | 9 | Lebanon | 24:32.60 |
| 129 | Cam WoodromePlace 129 · Grade 10 · Columbia | 10 | Columbia | 25:30.50 |
| 130 | Grady HessenauerPlace 130 · Grade 9 · Greenville | 9 | Greenville | 25:56.70 |
| 131 | Alex LaughlinPlace 131 · Grade 9 · Greenville | 9 | Greenville | 26:33.50 |
| 132 | Cooper PorterPlace 132 · Grade 10 · Trenton (Wesclin) | 10 | Trenton (Wesclin) | 28:50.90 |
| 133 | Caleb MaagPlace 133 · Grade 9 · Jerseyville (Jersey) | 9 | Jerseyville (Jersey) | 29:30.40 |