Weaverville is a town in Buncombe County, North Carolina, United States. The population was 2,646 in 2007. It is part of the Asheville Metropolitan Statistical Area.
Weaverville is located at 35°41′45″N 82°33′30″W / 35.69583°N 82.55833°W / 35.69583; -82.55833 (35.695809, -82.558444).
According to the United States Census Bureau, the town has a total area of 2.5 square miles (6.6 km²), of which, 2.5 square miles (6.6 km²) of it is land and 0.39% is water.