| 1 | Lucas PassmorePlace 1 · Grade 11 · Charleston Catholic | 11 | Charleston Catholic | 17:40.64 |
| 2 | Brody LesterPlace 2 · Grade 11 · Westside | 11 | Westside | 18:10.43 |
| 3 | Edward PassmorePlace 3 · Grade 11 · Charleston Catholic | 11 | Charleston Catholic | 18:20.68 |
| 4 | Ian DeskinsPlace 4 · Grade 12 · Logan | 12 | Logan | 19:10.90 |
| 5 | Grayson GuthriePlace 5 · Grade 11 · St Albans | 11 | St Albans | 20:39.17 |
| 6 | Abel DaltonPlace 6 · Grade 10 · St Albans | 10 | St Albans | 21:10.89 |
| 7 | Thomas BaileyPlace 7 · Grade 9 · Charleston Catholic | 9 | Charleston Catholic | 21:12.95 |
| 8 | Bryson MillerPlace 8 · Grade 11 · Scott | 11 | Scott | 21:16.85 |
| 9 | Charlie CurryPlace 9 · Grade 11 · Charleston Catholic | 11 | Charleston Catholic | 21:17.69 |
| 10 | Joseph BaileyPlace 10 · Grade 9 · Charleston Catholic | 9 | Charleston Catholic | 21:26.48 |
| 11 | Jaxson WalkerPlace 11 · Grade 12 · Westside | 12 | Westside | 21:33.42 |
| 12 | Tyson HallPlace 12 · Grade 11 · Scott | 11 | Scott | 21:47.47 |
| 13 | Kaleb SteelePlace 13 · Grade 11 · Westside | 11 | Westside | 22:03.15 |
| 14 | Cruz SkeensPlace 14 · Grade 11 · Poca | 11 | Poca | 22:57.18 |
| 15 | Kage LaymanPlace 15 · Grade 9 · Poca | 9 | Poca | 23:06.74 |
| 16 | Nicholas ShumatePlace 16 · Grade 12 · Westside | 12 | Westside | 23:35.54 |
| 17 | Cole StevensPlace 17 · Grade 11 · Poca | 11 | Poca | 23:39.73 |
| 18 | Athan GoffPlace 18 · Grade 11 · Charleston Catholic | 11 | Charleston Catholic | 24:19.64 |
| 19 | Ezra WilliamsPlace 19 · Grade 10 · Lincoln County | 10 | Lincoln County | 24:35.85 |
| 20 | Carson BlackPlace 20 · Grade 10 · Scott | 10 | Scott | 24:35.93 |
| 21 | Carter FerrellPlace 21 · Grade 11 · Scott | 11 | Scott | 24:49.17 |
| 22 | Isaac VancePlace 22 · Grade 9 · Logan | 9 | Logan | 24:52.03 |
| 23 | Devvin SkeensPlace 23 · Grade 10 · St Albans | 10 | St Albans | 25:13.24 |
| 24 | Carter SamplesPlace 24 · Grade 11 · Poca | 11 | Poca | 25:42.84 |
| 25 | Adam TolerPlace 25 · Grade 12 · Westside | 12 | Westside | 26:20.47 |
| 26 | Bryce QuisenberryPlace 26 · Grade 12 · Scott | 12 | Scott | 27:19.66 |
| 27 | Layden MitchellPlace 27 · Grade 11 · Poca | 11 | Poca | 28:35.01 |
| 28 | Carter DowneyPlace 28 · Grade 11 · St Albans | 11 | St Albans | 29:55.69 |
| 29 | Clayton SmarrPlace 29 · Grade 10 · Charleston Catholic | 10 | Charleston Catholic | 31:00.18 |
| 30 | Charles TaylorPlace 30 · Grade 10 · Charleston Catholic | 10 | Charleston Catholic | 31:11.92 |
| 31 | Tyler HensleyPlace 31 · Grade 12 · Liberty (Raleigh) | 12 | Liberty (Raleigh) | 31:42.29 |
| 32 | Braxton TorresPlace 32 · Grade 11 · Lincoln County | 11 | Lincoln County | 32:16.49 PR |
| 33 | Aaron HornPlace 33 · Grade 12 · Martin County | 12 | Martin County | 32:23.77 |
| 34 | Ty JacobsPlace 34 · Grade 11 · St Albans | 11 | St Albans | 32:40.29 |
| 35 | Ben FidlerPlace 35 · Grade 9 · Charleston Catholic | 9 | Charleston Catholic | 33:16.41 |
| 36 | Gunner LambertPlace 36 · Grade 10 · Chapmanville | 10 | Chapmanville | 33:53.84 |
| 37 | Connor MarushiaPlace 37 · Grade 9 · Westside | 9 | Westside | 34:56.54 |
| 38 | Graham CloerPlace 38 · Grade 9 · St Albans | 9 | St Albans | 35:11.37 |
| 39 | Max MitchellPlace 39 · Grade 9 · Poca | 9 | Poca | 35:31.11 |
| 40 | John CoxPlace 40 · Grade 9 · Logan | 9 | Logan | 39:52.22 |