Craig Creek rises in Montgomery County, Virginia, 4 miles (6 km) northwest of Blacksburg, in a valley between the parallel long ridges of Brush Mountain and Sinking Creek Mountain. It flows northeast into Craig County, passing the village of Webbs Mill. Turning north, the creek passes the town of New Castle at the eastern end of Sinking Creek Mountain, then continues generally northeast, though making continuous large incised meanders, into Botetourt County, where it joins the James River just upstream from the town of Eagle Rock.
^U.S. Geological Survey. National Hydrography Dataset high-resolution flowline data. The National MapArchived 2012-03-29 at the Wayback Machine, accessed April 1, 2011
USGS Hydrologic Unit Map - State of Virginia (1974)
Salmon, Emily J.; Edward D. C. Campbell, Jr., eds. (1994). The Hornbook of Virginia History (4th ed.). Richmond, VA: Virginia Office of Graphic Communications. ISBN0-88490-177-7.