The theory is if everyone buys insurance, then insurance companies can afford changes that everyone benefits from, like not denying people coverage for pre-existing conditions.
The Republican-backed bill also aims to force Attorney General Roy Cooper to join a lawsuit to challenge the law.
Republicans claimed that the federal law violates the basic freedoms of Americans to choose how to spend their money.
"Never before has Congress compelled Americans under threat of fines and taxes to purchase a product or service simply as a condition of existing in this country," Republican Rep. Jeff Barnhart said.
Republicans also said requiring small businesses to offer health insurance scares off business.
"People are afraid to hire because they do not know what the consequence of hiring full time people will be," Republican House Majority Leader Rep. Paul Stam said.
Democrats argued during the three-hour debate that scrapping the requirement to buy health insurance would continue the current problem of the insured paying the medical costs of the uninsured.
"This is not about mandates in general, because we passed that issue long ago," Democratic House Minority Leader Rep. Joe Hackney said.
Democrats also voiced concern about how quickly House Bill 2 landed on the House floor.
"In this sausage factory, I have this feeling that even if you like this bill there are some exclusions that should be in it that we're leaving out," Rep. Jennifer Weiss said.
The bill now moves to the Senate.
If it passes in the Senate, it will move on to Governor Bev Perdue, who will either sign it or veto it.
However, everyone understands that the issue of requiring people to buy insurance will ultimately wind up in the Supreme Court and it will have the final say.