| 1 | Joe HawkesPlace 1 · Western Albermarle | — | Western Albermarle | 15:28.8 |
| 2 | Jack EliasonPlace 2 · Western Albermarle | — | Western Albermarle | 15:29.4 |
| 3 | Colby BurchamPlace 3 · Deep Run | — | Deep Run | 15:48.5 |
| 4 | Aaron JohnsonPlace 4 · James River (Midlot | — | James River (Midlot | 16:02.4 |
| 5 | Adam SachsPlace 5 · Maggie Walker | — | Maggie Walker | 16:05.7 |
| 6 | Branden WoodPlace 6 · Louisa County High | — | Louisa County High | 16:05.9 |
| 7 | Ali IbrahimPlace 7 · Glen Allen | — | Glen Allen | 16:13.5 |
| 8 | Brenner BeardPlace 8 · Lafayette | — | Lafayette | 16:16.2 |
| 9 | Casey EvansPlace 9 · Clover Hill | — | Clover Hill | 16:17.9 |
| 10 | Cyrus Rody-RamazaniPlace 10 · Western Albermarle | — | Western Albermarle | 16:21.7 |
| 11 | Jacob HannerPlace 11 · Deep Run | — | Deep Run | 16:36.3 |
| 12 | Carter MorganPlace 12 · Maggie Walker | — | Maggie Walker | 16:36.8 |
| 13 | Ben JacksonPlace 13 · Glen Allen | — | Glen Allen | 16:38.0 |
| 14 | Joseph TaylorPlace 14 · Western Albermarle | — | Western Albermarle | 16:38.7 |
| 15 | Joe LaRuffaPlace 15 · James River (Midlot | — | James River (Midlot | 16:43.1 |
| 16 | Jordan BenduraPlace 16 · Deep Run | — | Deep Run | 16:46.8 |
| 17 | Andrew SteenkamerPlace 17 · Midlothian High Sch | — | Midlothian High Sch | 16:48.5 |
| 18 | Jake SchindelPlace 18 · Deep Run | — | Deep Run | 16:50.3 |
| 19 | Brian TavennerPlace 19 · Midlothian High Sch | — | Midlothian High Sch | 16:52.0 |
| 20 | Ethan BillmayerPlace 20 · Glen Allen | — | Glen Allen | 16:53.8 |
| 21 | Ben NeuwirthPlace 21 · Maggie Walker | — | Maggie Walker | 16:58.1 |
| 22 | Josh HoltzmanPlace 22 · Glen Allen | — | Glen Allen | 16:58.5 |
| 23 | John HerrmannPlace 23 · James River (Midlot | — | James River (Midlot | 17:04.0 |
| 24 | Wade CarterPlace 24 · Glen Allen | — | Glen Allen | 17:04.2 |
| 25 | Ben HagerichPlace 25 · Glen Allen | — | Glen Allen | 17:05.0 |
| 26 | Matt KlapakPlace 26 · Louisa County High | — | Louisa County High | 17:05.1 |
| 27 | Noah FieldsPlace 27 · York | — | York | 17:07.1 |
| 28 | Josh DonnellyPlace 28 · Deep Run | — | Deep Run | 17:08.0 |
| 29 | Joseph RiouxPlace 29 · Clover Hill | — | Clover Hill | 17:09.2 |
| 30 | Emil BaggsPlace 30 · Deep Run | — | Deep Run | 17:13.3 |
| 31 | Joey MaguirePlace 31 · Midlothian High Sch | — | Midlothian High Sch | 17:13.4 |
| 32 | Everett FloraPlace 32 · Maggie Walker | — | Maggie Walker | 17:20.3 |
| 33 | Cole MyersPlace 33 · Hanover | — | Hanover | 17:25.0 |
| 34 | Bowen VarneyPlace 34 · Louisa County High | — | Louisa County High | 17:25.5 |
| 35 | Wiill GardnerPlace 35 · Midlothian High Sch | — | Midlothian High Sch | 17:25.9 |
| 36 | Samuel D'AscoliPlace 36 · Deep Run | — | Deep Run | 17:27.0 |
| 37 | Nathaniel GregoryPlace 37 · Maggie Walker | — | Maggie Walker | 17:30.5 |
| 38 | Michael TullPlace 38 · Deep Run | — | Deep Run | 17:30.8 |
| 39 | Devin JohnsonPlace 39 · Glen Allen | — | Glen Allen | 17:31.4 |
| 40 | Stuart TerrillPlace 40 · Western Albermarle | — | Western Albermarle | 17:33.2 |
| 41 | Richard ZhaiPlace 41 · Maggie Walker | — | Maggie Walker | 17:38.0 |
| 42 | Ethan ColemanPlace 42 · Hanover | — | Hanover | 17:38.0 |
| 43 | Ryan NewmanPlace 43 · Mills Godwin | — | Mills Godwin | 17:39.9 |
| 44 | Michael TidwellPlace 44 · Fork Union | — | Fork Union | 17:39.9 |
| 45 | Will BonnerPlace 45 · Western Albermarle | — | Western Albermarle | 17:40.0 |
| 46 | Bryce LatinaPlace 46 · Glen Allen | — | Glen Allen | 17:40.6 |
| 47 | Davis HatcherPlace 47 · Lafayette | — | Lafayette | 17:40.7 |
| 48 | Lucas CusickPlace 48 · Mills Godwin | — | Mills Godwin | 17:44.0 |
| 49 | Stuart BeachPlace 49 · Lafayette | — | Lafayette | 17:44.7 |
| 50 | Kyler SorianoPlace 50 · Louisa County High | — | Louisa County High | 17:45.6 |
| 51 | Parker HollandPlace 51 · Glen Allen | — | Glen Allen | 17:48.9 |
| 52 | Everett RobinsonPlace 52 · Louisa County High | — | Louisa County High | 17:49.9 |
| 53 | Brandon YoungPlace 53 · York | — | York | 17:58.2 |
| 54 | Connor ZebrowskiPlace 54 · Deep Run | — | Deep Run | 18:00.0 |
| 55 | Troy CharaniaPlace 55 · Hanover | — | Hanover | 18:00.2 |
| 56 | Nicholas EmmertPlace 56 · Louisa County High | — | Louisa County High | 18:01.1 |
| 57 | Andrew Van De PuttePlace 57 · Maggie Walker | — | Maggie Walker | 18:01.9 |
| 58 | Chase BrooksbankPlace 58 · Deep Run | — | Deep Run | 18:05.8 |
| 59 | Noah RidgwayPlace 59 · James River (Midlot | — | James River (Midlot | 18:10.0 |
| 60 | Alex GoldmanPlace 60 · James River (Midlot | — | James River (Midlot | 18:12.4 |
| 61 | David BeckPlace 61 · Harrisonburg | — | Harrisonburg | 18:13.4 |
| 62 | Hayden KirwanPlace 62 · Harrisonburg | — | Harrisonburg | 18:13.8 |
| 63 | Paul MarcusonPlace 63 · York | — | York | 18:16.8 |
| 64 | Ben ScottPlace 64 · Midlothian High Sch | — | Midlothian High Sch | 18:16.8 |
| 65 | Zach AllenPlace 65 · James River (Midlot | — | James River (Midlot | 18:17.2 |
| 66 | Caiden DavenportPlace 66 · Louisa County High | — | Louisa County High | 18:18.0 |
| 67 | Kaiwan PurveyorPlace 67 · Lafayette | — | Lafayette | 18:18.6 |
| 68 | Jett MontesPlace 68 · Fork Union | — | Fork Union | 18:18.7 |
| 69 | Andrew DonaldsonPlace 69 · James River (Midlot | — | James River (Midlot | 18:19.9 |
| 70 | Blaine MarrsPlace 70 · Fork Union | — | Fork Union | 18:21.2 |
| 71 | Ethan BelotePlace 71 · Hanover | — | Hanover | 18:22.0 |
| 72 | Will DiefenthalerPlace 72 · James River (Midlot | — | James River (Midlot | 18:24.1 |
| 73 | Conner ThomasPlace 73 · Maggie Walker | — | Maggie Walker | 18:24.6 |
| 74 | Ben BlanchardPlace 74 · Maggie Walker | — | Maggie Walker | 18:28.6 |
| 75 | Jake OsbornPlace 75 · Hanover | — | Hanover | 18:30.1 |
| 76 | Daniel RoganPlace 76 · Clover Hill | — | Clover Hill | 18:33.5 |
| 77 | Caleb McNabbPlace 77 · Lafayette | — | Lafayette | 18:35.2 |
| 78 | Stephen PegherPlace 78 · York | — | York | 18:43.7 |
| 79 | Sam SagerPlace 79 · Clover Hill | — | Clover Hill | 18:46.6 |
| 80 | Peter SpadaroPlace 80 · Lafayette | — | Lafayette | 18:47.1 |
| 81 | Edwin BuretPlace 81 · Lafayette | — | Lafayette | 18:48.2 |
| 82 | Austin BergPlace 82 · Midlothian High Sch | — | Midlothian High Sch | 18:52.1 |
| 83 | James AllmonPlace 83 · York | — | York | 18:54.3 |
| 84 | Zach LamPlace 84 · Clover Hill | — | Clover Hill | 18:59.3 |
| 85 | Tucker McGrathPlace 85 · Harrisonburg | — | Harrisonburg | 18:59.6 |
| 86 | Elias WicklinePlace 86 · Harrisonburg | — | Harrisonburg | 19:00.1 |
| 87 | Wes GablePlace 87 · Hanover | — | Hanover | 19:00.5 |
| 88 | Andrew BalchPlace 88 · York | — | York | 19:01.9 |
| 89 | Thomas BettersPlace 89 · Fork Union | — | Fork Union | 19:12.3 |
| 90 | Joshua JulienPlace 90 · Fork Union | — | Fork Union | 19:16.3 |
| 91 | Garrett RobinsonPlace 91 · Louisa County High | — | Louisa County High | 19:18.2 |
| 92 | Jared GiszackPlace 92 · Fork Union | — | Fork Union | 19:21.0 |
| 93 | William LotPlace 93 · Fork Union | — | Fork Union | 19:26.1 |
| 94 | Jacob SowderPlace 94 · James River (Midlot | — | James River (Midlot | 19:26.3 |
| 95 | Chris JamesPlace 95 · Lafayette | — | Lafayette | 19:32.2 |
| 96 | Khaliq McQueenPlace 96 · Hanover | — | Hanover | 19:33.8 |
| 97 | Micah TongenPlace 97 · Harrisonburg | — | Harrisonburg | 19:35.2 |
| 98 | Simon HermesPlace 98 · York | — | York | 19:39.7 |
| 99 | Michael SchweikerPlace 99 · Maggie Walker | — | Maggie Walker | 19:44.5 |
| 100 | Travis ElspermanPlace 100 · Fork Union | — | Fork Union | 19:56.8 |
| 101 | Spencer KearnsPlace 101 · Staunton River High | — | Staunton River High | 20:03.7 |
| 102 | Logan HamiltonPlace 102 · Staunton River High | — | Staunton River High | 20:05.8 |
| 103 | Eric WalkerPlace 103 · Clover Hill | — | Clover Hill | 20:27.1 |
| 104 | Keith JohnsonPlace 104 · Staunton River High | — | Staunton River High | 20:41.1 |
| 105 | Alex NeufeldPlace 105 · Harrisonburg | — | Harrisonburg | 20:41.2 |
| 106 | Joseph LangstonPlace 106 · York | — | York | 20:54.1 |
| 107 | Charles ShaneckPlace 107 · Staunton River High | — | Staunton River High | 20:57.2 |
| 108 | Austin HeathPlace 108 · York | — | York | 20:58.9 |
| 109 | Michael HullemanPlace 109 · Harrisonburg | — | Harrisonburg | 21:08.4 |
| 110 | Ty McDanielPlace 110 · Harrisonburg | — | Harrisonburg | 21:14.4 |
| 111 | Noah SiderhurstPlace 111 · Harrisonburg | — | Harrisonburg | 21:15.5 |
| 112 | Coqui RobinsonPlace 112 · Clover Hill | — | Clover Hill | 21:18.2 |
| 113 | Garrett HodginPlace 113 · Staunton River High | — | Staunton River High | 23:50.9 |
| 114 | Cameron WilkinsPlace 114 · Staunton River High | — | Staunton River High | 23:52.3 |
| 1 | Cody DaultonPlace 1 · Dinwiddie | — | Dinwiddie | 17:15.5 |
| 2 | Thomas KallenPlace 2 · Western Albermarle | — | Western Albermarle | 17:32.6 |
| 3 | Jakob LarsenPlace 3 · Glen Allen | — | Glen Allen | 17:37.7 |
| 4 | Jack VigilantePlace 4 · Western Albermarle | — | Western Albermarle | 17:52.2 |
| 5 | Thomas GathrightPlace 5 · Western Albermarle | — | Western Albermarle | 17:54.6 |
| 6 | Jack DeutschPlace 6 · Mills Godwin | — | Mills Godwin | 18:01.5 |
| 7 | Jack ThomasPlace 7 · Glen Allen | — | Glen Allen | 18:04.1 |
| 8 | Jaideep DamlePlace 8 · Maggie Walker | — | Maggie Walker | 18:06.4 |
| 9 | Eric WilsonPlace 9 · Western Albermarle | — | Western Albermarle | 18:17.6 |
| 10 | Cam WoodPlace 10 · Western Albermarle | — | Western Albermarle | 18:18.9 |
| 11 | Kenneth ConcepcionPlace 11 · Deep Run | — | Deep Run | 18:20.3 |
| 12 | Ben McCormackPlace 12 · Midlothian High Sch | — | Midlothian High Sch | 18:23.6 |
| 13 | Jacob SmithPlace 13 · Maggie Walker | — | Maggie Walker | 18:27.5 |
| 14 | Alex SeaburyPlace 14 · Maggie Walker | — | Maggie Walker | 18:35.8 |
| 15 | Mills TaylorPlace 15 · Glen Allen | — | Glen Allen | 18:38.9 |
| 16 | Josh BabbPlace 16 · Midlothian High Sch | — | Midlothian High Sch | 18:39.3 |
| 17 | Gustavo Domenech-BadeaPlace 17 · Mills Godwin | — | Mills Godwin | 18:44.3 |
| 18 | Owen LindsayPlace 18 · Deep Run | — | Deep Run | 18:45.6 |
| 19 | Matthew VorsterPlace 19 · Deep Run | — | Deep Run | 18:46.9 |
| 20 | Matthew FitchettPlace 20 · Maggie Walker | — | Maggie Walker | 18:47.5 |
| 21 | Maxie BroeningPlace 21 · Maggie Walker | — | Maggie Walker | 18:48.7 |
| 22 | Quinn NearyPlace 22 · Maggie Walker | — | Maggie Walker | 18:53.9 |
| 23 | Jack EreioPlace 23 · Midlothian High Sch | — | Midlothian High Sch | 19:02.5 |
| 24 | Patrick ErtelPlace 24 · Glen Allen | — | Glen Allen | 19:03.4 |
| 25 | Michael WunderlichPlace 25 · Midlothian High Sch | — | Midlothian High Sch | 19:08.0 |
| 26 | Peter GormanPlace 26 · Deep Run | — | Deep Run | 19:09.9 |
| 27 | Sam Fritton-AmorosePlace 27 · Colonial Forge | — | Colonial Forge | 19:13.6 |
| 28 | Nick SimsPlace 28 · Glen Allen | — | Glen Allen | 19:15.0 |
| 29 | Nolan TaylorPlace 29 · Mills Godwin | — | Mills Godwin | 19:16.8 |
| 30 | Adam StuckeyPlace 30 · Deep Run | — | Deep Run | 19:17.9 |
| 31 | Connor HicksPlace 31 · Colonial Forge | — | Colonial Forge | 19:18.1 |
| 32 | Connor MullinsPlace 32 · Glen Allen | — | Glen Allen | 19:19.5 |
| 33 | Miles NardiPlace 33 · Maggie Walker | — | Maggie Walker | 19:20.7 |
| 34 | Jack HendricksPlace 34 · Maggie Walker | — | Maggie Walker | 19:21.5 |
| 35 | Ashton WattersonPlace 35 · Colonial Forge | — | Colonial Forge | 19:22.7 |
| 36 | Lee TeixeiraPlace 36 · Glen Allen | — | Glen Allen | 19:25.1 |
| 37 | Tyler MoorePlace 37 · Glen Allen | — | Glen Allen | 19:26.6 |
| 38 | Tyler AndersonPlace 38 · Mills Godwin | — | Mills Godwin | 19:28.0 |
| 39 | Donovan HolcombPlace 39 · Colonial Forge | — | Colonial Forge | 19:32.9 |
| 40 | Collin CastrinaPlace 40 · Western Albermarle | — | Western Albermarle | 19:35.6 |
| 41 | Troy StephensPlace 41 · Fluvanna County | — | Fluvanna County | 19:35.8 |
| 42 | Kyle DanielsPlace 42 · Deep Run | — | Deep Run | 19:40.6 |
| 43 | Andre StencavagePlace 43 · Colonial Forge | — | Colonial Forge | 19:41.8 |
| 44 | Spencer SmithPlace 44 · Maggie Walker | — | Maggie Walker | 19:51.5 |
| 45 | Justin ElliotPlace 45 · Midlothian High Sch | — | Midlothian High Sch | 19:59.6 |
| 46 | Jason ChildressPlace 46 · Mills Godwin | — | Mills Godwin | 20:00.0 |
| 47 | Aaron ZimmermanPlace 47 · Lafayette | — | Lafayette | 20:02.0 |
| 48 | Owen WidrickPlace 48 · Midlothian High Sch | — | Midlothian High Sch | 20:10.7 |
| 49 | Nicolas MilaniPlace 49 · Deep Run | — | Deep Run | 20:16.0 |
| 50 | Sam FlohrePlace 50 · Mills Godwin | — | Mills Godwin | 20:18.9 |
| 51 | Harlan WaltersPlace 51 · Lafayette | — | Lafayette | 20:20.6 |
| 52 | Thomas MackiePlace 52 · Midlothian High Sch | — | Midlothian High Sch | 20:21.1 |
| 53 | KeAndre McClaryPlace 53 · Dinwiddie | — | Dinwiddie | 20:25.1 |
| 54 | Andrew StewartPlace 54 · Lafayette | — | Lafayette | 20:25.7 |
| 55 | Matthew XuPlace 55 · Mills Godwin | — | Mills Godwin | 20:27.8 |
| 56 | Aaron PhilhowerPlace 56 · Mills Godwin | — | Mills Godwin | 20:30.6 |
| 57 | Joey PaulsonPlace 57 · Western Albermarle | — | Western Albermarle | 20:33.4 |
| 58 | William RussellPlace 58 · Colonial Forge | — | Colonial Forge | 20:42.5 |
| 59 | Ben ClarkPlace 59 · Deep Run | — | Deep Run | 20:46.2 |
| 60 | Evan DoneganPlace 60 · Colonial Forge | — | Colonial Forge | 20:48.2 |
| 61 | Jacob BartonPlace 61 · Lafayette | — | Lafayette | 20:51.1 |
| 62 | Charles EllisonPlace 62 · Mills Godwin | — | Mills Godwin | 20:55.3 |
| 63 | Owen JohnstonPlace 63 · Harrisonburg | — | Harrisonburg | 20:57.7 |
| 64 | Alex GiangPlace 64 · Lafayette | — | Lafayette | 20:59.1 |
| 65 | Alex FeekenPlace 65 · Colonial Forge | — | Colonial Forge | 21:03.3 |
| 66 | Seth MoorePlace 66 · Dinwiddie | — | Dinwiddie | 21:08.4 |
| 67 | Nathan ValentinPlace 67 · Fluvanna County | — | Fluvanna County | 21:08.6 |
| 68 | Dru DunnPlace 68 · Lafayette | — | Lafayette | 21:19.9 |
| 69 | Justin CarrollPlace 69 · Lafayette | — | Lafayette | 21:22.5 |
| 70 | Ruohan DingPlace 70 · Deep Run | — | Deep Run | 21:22.9 |
| 71 | Drew RogersPlace 71 · Lafayette | — | Lafayette | 21:26.9 |
| 72 | Kunal ChandPlace 72 · Maggie Walker | — | Maggie Walker | 21:34.5 |
| 73 | Matthew CantagalloPlace 73 · Fluvanna County | — | Fluvanna County | 21:37.5 |
| 74 | Fernando PosadaPlace 74 · Harrisonburg | — | Harrisonburg | 21:43.1 |
| 75 | Evan WoodPlace 75 · Harrisonburg | — | Harrisonburg | 22:08.6 |
| 76 | Charlie BeekwilderPlace 76 · Dinwiddie | — | Dinwiddie | 22:20.5 |
| 77 | Christian LasherPlace 77 · Dinwiddie | — | Dinwiddie | 22:30.2 |
| 78 | Bryan MurphyPlace 78 · Lafayette | — | Lafayette | 22:43.0 |
| 79 | Jalen WinfieldPlace 79 · Dinwiddie | — | Dinwiddie | 23:16.1 |
| 80 | Grayson BarberPlace 80 · Deep Run | — | Deep Run | 23:31.9 |
| 81 | Chase CousinsPlace 81 · Dinwiddie | — | Dinwiddie | 23:32.2 |
| 82 | Evan NeufeldPlace 82 · Harrisonburg | — | Harrisonburg | 23:56.4 |
| 83 | Josh EnglePlace 83 · Harrisonburg | — | Harrisonburg | 26:17.9 |
| 84 | Micah CessnaPlace 84 · Harrisonburg | — | Harrisonburg | 26:29.1 |
| 85 | Gabe WalkerPlace 85 · Dinwiddie | — | Dinwiddie | 27:37.9 |
| 1 | Cohen KingPlace 1 · Western Albermarle | — | Western Albermarle | 18:28.7 |
| 2 | Luke MunroPlace 2 · Deep Run | — | Deep Run | 18:34.2 |
| 3 | Colby ActonPlace 3 · Western Albermarle | — | Western Albermarle | 18:36.5 |
| 4 | Ben RobertsPlace 4 · Maggie Walker | — | Maggie Walker | 18:42.5 |
| 5 | Luke StrobachPlace 5 · Western Albermarle | — | Western Albermarle | 18:47.5 |
| 6 | Carson RackleyPlace 6 · Glen Allen | — | Glen Allen | 18:50.3 |
| 7 | Jaden PhillipsPlace 7 · James River (Midlot | — | James River (Midlot | 18:50.9 |
| 8 | Jack BurrPlace 8 · Western Albermarle | — | Western Albermarle | 18:51.6 |
| 9 | Jonathan KumerPlace 9 · Western Albermarle | — | Western Albermarle | 19:03.4 |
| 10 | Hugh FeehanPlace 10 · Maggie Walker | — | Maggie Walker | 19:11.9 |
| 11 | Alex BroeningPlace 11 · Maggie Walker | — | Maggie Walker | 19:18.1 |
| 12 | Bryce ChristianPlace 12 · Glen Allen | — | Glen Allen | 19:19.0 |
| 13 | Jake GreensteinPlace 13 · Western Albermarle | — | Western Albermarle | 19:23.4 |
| 14 | Robel LulsegedPlace 14 · Fork Union | — | Fork Union | 19:29.6 |
| 15 | James BronnenbergPlace 15 · James River (Midlot | — | James River (Midlot | 19:32.5 |
| 16 | Sam ChunPlace 16 · Glen Allen | — | Glen Allen | 19:40.8 |
| 17 | Anthony DillsPlace 17 · Hanover | — | Hanover | 19:42.7 |
| 18 | Christian StrahanPlace 18 · Deep Run | — | Deep Run | 19:44.9 |
| 19 | Madoc WintersPlace 19 · Maggie Walker | — | Maggie Walker | 19:45.2 |
| 20 | Winston RansonePlace 20 · James River (Midlot | — | James River (Midlot | 19:53.2 |
| 21 | Josh BickmeierPlace 21 · Deep Run | — | Deep Run | 19:57.3 |
| 22 | Ty RedmondPlace 22 · James River (Midlot | — | James River (Midlot | 19:57.5 |
| 23 | Joseph FaudalePlace 23 · Hanover | — | Hanover | 19:58.4 |
| 24 | Logan JenkinsPlace 24 · Louisa County High | — | Louisa County High | 20:00.0 |
| 25 | Andrew ChoffelPlace 25 · Louisa County High | — | Louisa County High | 20:01.7 |
| 26 | Josiah CannonPlace 26 · Louisa County High | — | Louisa County High | 20:02.2 |
| 27 | Thomas FullerPlace 27 · Louisa County High | — | Louisa County High | 20:02.8 |
| 28 | Samuel GoodmanPlace 28 · Maggie Walker | — | Maggie Walker | 20:03.5 |
| 29 | Cole LaRochellePlace 29 · Fluvanna County | — | Fluvanna County | 20:03.7 |
| 30 | Roman ChenowethPlace 30 · Maggie Walker | — | Maggie Walker | 20:07.8 |
| 31 | Max FriedlanderPlace 31 · Deep Run | — | Deep Run | 20:08.3 |
| 32 | Chris MillerPlace 32 · Western Albermarle | — | Western Albermarle | 20:14.7 |
| 33 | Henry BergerPlace 33 · Mills Godwin | — | Mills Godwin | 20:16.9 |
| 34 | Ayden LevitinPlace 34 · Deep Run | — | Deep Run | 20:16.9 |
| 35 | Nick MolnarPlace 35 · Deep Run | — | Deep Run | 20:24.6 |
| 36 | Nick SpadaroPlace 36 · Lafayette | — | Lafayette | 20:25.5 |
| 37 | Adam VienerPlace 37 · Deep Run | — | Deep Run | 20:26.1 |
| 38 | David CipollettiPlace 38 · Mills Godwin | — | Mills Godwin | 20:26.9 |
| 39 | Vance WoolardPlace 39 · Hanover | — | Hanover | 20:27.7 |
| 40 | Patrick FlemingPlace 40 · Clover Hill | — | Clover Hill | 20:28.9 |
| 41 | Jacob DillsPlace 41 · Hanover | — | Hanover | 20:30.1 |
| 42 | Adam WillisPlace 42 · Maggie Walker | — | Maggie Walker | 20:30.3 |
| 43 | Ian DouglasPlace 43 · Deep Run | — | Deep Run | 20:31.3 |
| 44 | Alex RodriguezPlace 44 · Lafayette | — | Lafayette | 20:38.0 |
| 45 | Joel ChavezPlace 45 · Louisa County High | — | Louisa County High | 20:40.1 |
| 46 | Alex StencavagePlace 46 · Colonial Forge | — | Colonial Forge | 20:40.3 |
| 47 | Brennan DillardPlace 47 · Colonial Forge | — | Colonial Forge | 20:40.5 |
| 48 | Ryan KovalPlace 48 · Lafayette | — | Lafayette | 20:44.4 |
| 49 | Nicholas SheetsPlace 49 · Mills Godwin | — | Mills Godwin | 20:45.9 |
| 50 | Evan WaggonerPlace 50 · Glen Allen | — | Glen Allen | 20:46.2 |
| 51 | John MurphyPlace 51 · Lafayette | — | Lafayette | 20:48.9 |
| 52 | Brennan UpshawPlace 52 · Hanover | — | Hanover | 20:51.5 |
| 53 | Jonah CuranPlace 53 · Maggie Walker | — | Maggie Walker | 20:53.2 |
| 54 | Jaden LuczakPlace 54 · Clover Hill | — | Clover Hill | 20:55.2 |
| 55 | Porter ClarkPlace 55 · Midlothian High Sch | — | Midlothian High Sch | 20:55.3 |
| 56 | Zachery SheleyPlace 56 · Maggie Walker | — | Maggie Walker | 20:55.6 |
| 57 | Harrison BrooksPlace 57 · Deep Run | — | Deep Run | 20:57.0 |
| 58 | Evan HoldenPlace 58 · Deep Run | — | Deep Run | 20:57.0 |
| 59 | Ethan NelsonPlace 59 · Louisa County High | — | Louisa County High | 20:58.0 |
| 60 | George McLoughlinPlace 60 · Deep Run | — | Deep Run | 20:58.2 |
| 61 | Aaron TaliaferroPlace 61 · Fork Union | — | Fork Union | 20:58.3 |
| 62 | Wesley BarbaraPlace 62 · Mills Godwin | — | Mills Godwin | 21:01.0 |
| 63 | Austin CramerPlace 63 · James River (Midlot | — | James River (Midlot | 21:06.1 |
| 64 | Brandon GauglerPlace 64 · Hanover | — | Hanover | 21:06.1 |
| 65 | Jackson SmithPlace 65 · Glen Allen | — | Glen Allen | 21:06.5 |
| 66 | Connor WrightPlace 66 · Lafayette | — | Lafayette | 21:10.0 |
| 67 | Jack LaserPlace 67 · Midlothian High Sch | — | Midlothian High Sch | 21:11.8 |
| 68 | Jack CrossPlace 68 · Colonial Forge | — | Colonial Forge | 21:12.9 |
| 69 | Sean MeesePlace 69 · Colonial Forge | — | Colonial Forge | 21:14.3 |
| 70 | Sulaimo AbubakarPlace 70 · Fork Union | — | Fork Union | 21:15.2 |
| 71 | Nathan MarkiewiczPlace 71 · Fluvanna County | — | Fluvanna County | 21:16.0 |
| 72 | Eric WangPlace 72 · Mills Godwin | — | Mills Godwin | 21:16.0 |
| 73 | Charlie WrightPlace 73 · Lafayette | — | Lafayette | 21:19.5 |
| 74 | Luke SchoensterPlace 74 · Louisa County High | — | Louisa County High | 21:22.5 |
| 75 | Trevor LundgrinPlace 75 · Maggie Walker | — | Maggie Walker | 21:23.9 |
| 76 | Joshua MulroyPlace 76 · Colonial Forge | — | Colonial Forge | 21:24.4 |
| 77 | Chris AskewPlace 77 · Louisa County High | — | Louisa County High | 21:24.5 |
| 78 | Ryan KocikPlace 78 · Hanover | — | Hanover | 21:25.4 |
| 79 | Logan MackleyPlace 79 · Glen Allen | — | Glen Allen | 21:26.3 |
| 80 | Murphy HoltonPlace 80 · Deep Run | — | Deep Run | 21:35.0 |
| 81 | Gagan SandhuPlace 81 · James River (Midlot | — | James River (Midlot | 21:36.6 |
| 82 | Carter ThrashPlace 82 · Lafayette | — | Lafayette | 21:38.2 |
| 83 | Quinton MorrisPlace 83 · Lafayette | — | Lafayette | 21:41.6 |
| 84 | Jeremy TurnerPlace 84 · Clover Hill | — | Clover Hill | 21:42.1 |
| 85 | Braden PiersolPlace 85 · Mills Godwin | — | Mills Godwin | 21:47.7 |
| 86 | John BoeslerPlace 86 · Lafayette | — | Lafayette | 21:49.2 |
| 87 | Alex PleasantsPlace 87 · Fluvanna County | — | Fluvanna County | 21:50.9 |
| 88 | Oliver SimmsPlace 88 · Maggie Walker | — | Maggie Walker | 21:52.5 |
| 89 | Jacob LeePlace 89 · Maggie Walker | — | Maggie Walker | 21:53.6 |
| 90 | Sam WeddlePlace 90 · Staunton River High | — | Staunton River High | 21:56.2 |
| 91 | Lane HawkinsPlace 91 · Maggie Walker | — | Maggie Walker | 22:06.3 |
| 92 | Joshua NievesPlace 92 · Colonial Forge | — | Colonial Forge | 22:07.4 |
| 93 | Michael MoorePlace 93 · Hanover | — | Hanover | 22:14.4 |
| 94 | Colton DerrerPlace 94 · Mills Godwin | — | Mills Godwin | 22:17.2 |
| 95 | Tristan SmithPlace 95 · Midlothian High Sch | — | Midlothian High Sch | 22:19.5 |
| 96 | Matty ThompsonPlace 96 · Deep Run | — | Deep Run | 22:20.4 |
| 97 | Aiden RileyPlace 97 · Louisa County High | — | Louisa County High | 22:20.6 |
| 98 | Liam OlahPlace 98 · Colonial Forge | — | Colonial Forge | 22:26.3 |
| 99 | Boyd BallancePlace 99 · Hanover | — | Hanover | 22:28.0 |
| 100 | Walker BrewerPlace 100 · Lafayette | — | Lafayette | 22:28.8 |
| 101 | Will BrewerPlace 101 · Lafayette | — | Lafayette | 22:29.3 |
| 102 | Roy StisherPlace 102 · Glen Allen | — | Glen Allen | 22:32.5 |
| 103 | Sean SeaboltPlace 103 · Fork Union | — | Fork Union | 22:42.8 |
| 104 | Jacob HadfieldPlace 104 · James River (Midlot | — | James River (Midlot | 22:46.7 |
| 105 | Andrew PowersPlace 105 · Mills Godwin | — | Mills Godwin | 22:47.1 |
| 106 | Jacob BradleyPlace 106 · James River (Midlot | — | James River (Midlot | 22:50.3 |
| 107 | Carlos AlvverezPlace 107 · Staunton River High | — | Staunton River High | 22:58.4 |
| 108 | Morgan GearyPlace 108 · Mills Godwin | — | Mills Godwin | 22:58.9 |
| 109 | C.J. BurkePlace 109 · Hanover | — | Hanover | 23:02.9 |
| 110 | Ryan QuiramPlace 110 · Midlothian High Sch | — | Midlothian High Sch | 23:03.3 |
| 111 | Liam WellsPlace 111 · Fluvanna County | — | Fluvanna County | 23:14.0 |
| 112 | Joey DavisPlace 112 · Lafayette | — | Lafayette | 23:26.5 |
| 113 | Grant RectorPlace 113 · Glen Allen | — | Glen Allen | 23:29.1 |
| 114 | Ross GeorgePlace 114 · Maggie Walker | — | Maggie Walker | 23:29.7 |
| 115 | Quinn KehoePlace 115 · James River (Midlot | — | James River (Midlot | 23:39.6 |
| 116 | Blake HathawayPlace 116 · Colonial Forge | — | Colonial Forge | 23:42.7 |
| 117 | Jacob BraunerPlace 117 · York | — | York | 23:53.2 |
| 118 | Daniel BartsevichPlace 118 · Fork Union | — | Fork Union | 23:55.1 |
| 119 | James KlaasenPlace 119 · Mills Godwin | — | Mills Godwin | 23:56.5 |
| 120 | Macon DavisPlace 120 · Mills Godwin | — | Mills Godwin | 23:59.6 |
| 121 | Daniel DrozdowskiPlace 121 · Hanover | — | Hanover | 24:04.8 |
| 122 | Andrew FickPlace 122 · Colonial Forge | — | Colonial Forge | 24:12.0 |
| 123 | Colin KingPlace 123 · Louisa County High | — | Louisa County High | 24:30.2 |
| 124 | Joey EdwardsPlace 124 · Mills Godwin | — | Mills Godwin | 24:35.3 |
| 125 | Chance SmithPlace 125 · Lafayette | — | Lafayette | 24:55.5 |
| 126 | Daniel LawsonPlace 126 · Lafayette | — | Lafayette | 25:02.6 |
| 127 | Justin KaplanPlace 127 · Mills Godwin | — | Mills Godwin | 25:12.9 |
| 128 | Xander KahwajyPlace 128 · Midlothian High Sch | — | Midlothian High Sch | 25:13.6 |
| 129 | Trey SchunderPlace 129 · Midlothian High Sch | — | Midlothian High Sch | 25:15.6 |
| 130 | Eric TruongPlace 130 · Clover Hill | — | Clover Hill | 25:18.8 |
| 131 | Cameron BowmanPlace 131 · Staunton River High | — | Staunton River High | 25:56.9 |
| 132 | Riley JeffersonPlace 132 · Mills Godwin | — | Mills Godwin | 26:28.4 |
| 133 | Miles PeoplesPlace 133 · Hanover | — | Hanover | 26:52.6 |
| 134 | Tristin LemensPlace 134 · Hanover | — | Hanover | 26:57.0 |
| 135 | Will O'HalloranPlace 135 · Midlothian High Sch | — | Midlothian High Sch | 28:56.4 |
| 136 | Timothy PainterPlace 136 · Louisa County High | — | Louisa County High | 29:08.2 |