Williamston is a town in Martin County, North Carolina, United States. The population was 5,843 at the 2000 census. It is the county seat of Martin County. The closest major city is Greenville, approx. 28 mi to the southwest.
Williamston is located at 35°51′5″N 77°3′45″W / 35.85139°N 77.0625°W / 35.85139; -77.0625 (35.851454, -77.062588).
According to the United States Census Bureau, the town has a total area of 3.7 square miles (9.6 km²), all of it land. However, it is on the Roanoke River.