McHenry was born in Gastonia, North Carolina.
His first run for public office was for the North Carolina House of Representatives in 1998, while still a junior in college; he won the primary but lost in the general election.