Bunn is a town in Franklin County, North Carolina, United States. The population was 344 at the 2010 census.
Bunn is named for Green Walker Bunn, who first settled southeast of the current town in the late 1800s. The town was established on land purchased around 1909 by the Montgomery Lumber Company and incorporated four years later.
The Andrews-Moore House and Baker Farm are listed on the National Register of Historic Places.
Bunn is located in southeastern Franklin County at 35°57′29″N 78°15′7″W (35.958106, −78.251980). North Carolina Highway 98 passes through the town, leading southeast 6 miles (10 km) to U.S. Route 64 and west 15 miles (24 km) to Wake Forest. North Carolina Highway 39 intersects NC 98 in the center of town; it leads north 10 miles (16 km) to Louisburg, the Franklin County seat, and south 7 miles (11 km) to US 64 east of Zebulon. NC 98 and 39 combine to form South Main Street in the center of Bunn.
According to the United States Census Bureau, the town has a total area of 0.54 square miles (1.4 km2), all of it land.
As of the census of 2010, there were 344 people, 157 households, and 97 families residing in the town. The population density was 688.0 people per square mile (260.1/km2). The racial makeup of the town was 66.6% White, 28.2% African American, 0.6% Native American, 0.0% Asian, 2.0% from other races, and 2.6% from two or more races. Hispanic or Latino of any race were 10.2% of the population.