"After nearly nine years, America's war in Iraq will be over," Obama said of the withdrawal.
But as the country marks the end of the war, Obama said it was shifting into a new relationship with Iraq.
"As of Jan. 1, and in keeping with our strategic framework agreement with Iraq, it will be a normal relationship between sovereign nations, an equal partnership based on mutual interest and mutual respect," Obama said.
He said he spoke with Iraqi Prime Minister Nouri al-Maliki earlier Friday.
"I reaffirmed that the United States keeps its commitments. He spoke of the determination of the Iraqi people to forge their own future," Obama said. "We are in full agreement about how to move forward."
Reaction from Republican presidential hopefuls was negative.
"President Obama's astonishing failure to secure an orderly transition in Iraq has unnecessarily put at risk the victories that were won through the blood and sacrifice of thousands of American men and women," former Massachusetts Gov. Mitt Romney said in a statement. "The unavoidable question is whether this decision is the result of a naked political calculation or simply sheer ineptitude in negotiations with the Iraqi government."
Rep. Michele Bachmann of Minnesota said Obama's announcement "is a political decision and not a military one," MSNBC reported.
House Speaker John Boehner expressed concern that a full withdrawal could negate gains made, but "I'm hopeful that both countries will work together to guarantee that a free and democratic Iraq remains a strong and stable partner for the United States in the Middle East."
The plan is similar to an agreement negotiated by President George W. Bush to withdraw U.S. troops from Iraq at the end of 2011. However, negotiations between the U.S. and Iraqi governments in recent months concerned how many U.S. troops should stay for training and monitoring for potentially fiery situations at the boundary line between Iraq's Kurdish north and the rest of the country.
A big sticking point in negotiations was Iraq's resolve not to offer immunity to U.S. military personnel staying past the Dec. 31 deadline. U.S. Defense Secretary Leon Panetta had said immunity was non-negotiable, and talks with Maliki and his fragile coalition government broke down.
On Thursday, the U.S. military closed the second of its three regional headquarters in Iraq, leaving 39,000 troops still to be withdrawn by the end of December.
Obama said he and Maliki agreed to convene a meeting of the Higher Coordinating Committee of the Strategic Framework Agreement in the coming weeks and that he invited the prime minister to Washington in December.
"Today, I can say that our troops in Iraq will definitely be home for the holidays," Obama said. "This December will be a time to reflect on all that we've been through in this war."
He noted that about 180,000 troops were deployed to Iraq and Afghanistan when he took office and by the end of this year "that number will be cut in half. And make no mistake, they will continue to go down."
During a news conference after Obama's announcement, Denis McDonough, deputy national security adviser, said, "The bottom line is, [this decision] is reflective of his view and the prime minister's view of the kind of relationship the countries will have going forward.
"We will have a training capacity there," McDonough said, but it would be a "normal training capacity" as the United States has elsewhere in the world.
"We felt we got what we needed," he said, adding Iraq is secure, stable and self-reliant.