Shenandoah is a town in Page County, Virginia, United States. The population was 2,373 at the 2010 census.