Edinburg is a town in Shenandoah County, Virginia, United States. The population was 1,041 at the 2010 census.
The Bowman-Zirkle Farm, Campbell Farm, Clem-Kagey Farm, Edinburg Historic District, Edinburg Mill, Dr. Christian Hockman House, Lantz Mill, and John Miley Maphis House are listed on the National Register of Historic Places.
Before becoming incorporated in 1852, Edinburg was also previously known by the names of Shryock and Stony Creek. The name "Shryock" was used by Prince Bernhard of Saxe-Weimar-Eisenach in 1825 to describe Edinburg as he passed through the Shenandoah Valley.
Edinburg is located at 38°49′21″N 78°33′55″W (38.822558, −78.565362).
According to the United States Census Bureau, the town has a total area of 0.7 square miles (1.9 km2), all of it land.
U.S. Route 11 is the main road passing through Edinburg, serving as Main Street. Virginia State Route 185 connects US 11 to Interstate 81, which travels north–south just west of the town limits.
As of the census of 2000, 813 people, 385 households, and 220 families resided in the town. The population density was 1,103.2 people per square mile (424.2/km2). There were 425 housing units at an average density of 576.7 per square mile (221.7/km2).