Salem is located in the Shenandoah Valley between the Alleghany and Blue Ridge Mountains on the Roanoke River. Salem is a city with an old-fashioned, small town feel. Areas attractions include the Salem Civic Center, the Salem Stadium, the Memorial Stadium and more.