Magnolia is a town in Duplin County, North Carolina, United States. The population was 939 at the 2010 census.