"Over the next two months, our troops in Iraq, tens of thousands of them, will pack up their gear and board convoys for the journey home," Obama said.
It will end one of the longest wars in U.S. history. The president said he wants all U.S. troops out of Iraq by the end of 2011.
"Our troops are finally coming home," Obama said during a news briefing.
The announcement puts to an end the possibility of maintaining a U.S. military presence in Iraq beyond the withdrawal deadline that was set in 2008 by President George W. Bush. In recent months, Washington had been discussing the possibility of several thousand American troops remaining to continue training Iraqi security forces. But Iraqi leaders refused to give U.S. troops immunity from prosecution in Iraqi courts, and the U.S. refused to stay without that guarantee.
"The last American soldier will cross the border out of Iraq with their heads held high, proud of their success and knowing that the American people stand united in our support for our troops," Obama said.
Sources say Obama informed Iraqi Prime Minister Nouri al-Maliki on the news via a secure video conference. The president and the state department feel Iraq will be able to handle its own security.
"We do have confidence that they can provide security. We've been working hard to build that capability over many years, and I think what we've seen in this drawdown is that they are able to meet some of these challenges," said Mark Toner of the U.S. State Department.
More than 4,400 American military members have been killed since the U.S. invaded Iraq in March 2003. There are 39,000 U.S. troops in Iraq as of this week, and the monthly cost of the war was estimated at nearly $4 billion.
The president says after Jan. 1, 2012, the U.S. will deal with Iraq as a partner and continue to work to provide stability in the region.
Obama also said the next step is to continue the drawdown of troops in Afghanistan.