Belle Haven is a town in Accomack and Northampton counties in the U.S. state of Virginia. The population was 543 in the 2020 census.