Merrimack is a town in Hillsborough County, New Hampshire, United States. The population was 25,119 at the 2000 census, making it the eighth-largest municipality in New Hampshire. There are four villages in the town: Merrimack Village (formerly known as Souhegan Village), Thornton's Ferry, Reed's Ferry, and South Merrimack.