Newbury is a town in Merrimack County, New Hampshire, United States. The population was 2,172 at the 2020 census. The town includes the villages of Newbury, Blodgett Landing and South Newbury, as well as a portion of Mount Sunapee Resort, a ski area, and a portion of Lake Sunapee, including the beach at Mount Sunapee State Park.