Halifax is a town in Halifax County, Virginia, United States, along the Banister River. The population was 1,389 at the 2000 census. It is the county seat of Halifax County.
Halifax is located at 36°45′53″N 78°55′41″W / 36.76472°N 78.92806°W / 36.76472; -78.92806 (36.764593, -78.928081).
According to the United States Census Bureau, the town has a total area of 3.8 square miles (9.9 km²), of which, 3.8 square miles (9.8 km²) of it is land and 0.04 square miles (0.1 km²) of it (0.52%) is water.