US President Barack Obama campaigned for the White House on a pledge to end wars in the Middle East, but he’s now admitted US soldiers will be in Afghanistan to 2017.
The New York Times reported Mr Obama had failed to deliver “one of the central promises of his presidency” in both Iraq and Afghanistan.
He had planned to withdraw all US troops out of the Middle East within two terms of government.
On Thursday (AEDT), he told reporters at the White House that Afghan troops were not ready to stand alone in the embattled nation because of ongoing Taliban threats.
US troops also remained in Iraq – despite being originally withdrawn in 2011 – and have also started bombing IS in Syria.
The President said his decision to leave the 9800-strong force in Afghanistan was “the right thing to do”.
“As commander in chief I will not allow Afghanistan to be used as safe haven for terrorists to attack our nation again,” Mr Obama said from the White House.
“While America’s combat mission in Afghanistan may be over, our commitment to Afghanistan and its people endures.”
Mr Obama said the Taliban remained a danger to the Afghan people and America, and this meant it must still be fought.
“I do not send you into harm’s way lightly,” he said to troops.
“I do not support the idea of endless war, and I have repeatedly argued against marching into open-ended military conflicts that do not serve our core security interests.”
There have been American troops in Afghanistan for 14 years.
Former President George W. Bush first sent US forces into the country in response to the 9/11 terrorist attacks in 2001.
Under the new plan, troop numbers would be wound down to 5,500 from 2017.
Mr Obama said eventually the US hoped to only have a small embassy in the city of Kabul.
The US-led coalition ended combat in Afghanistan after 13 years at the end of 2014.
Afghan troops were put in charge of security with assistance from NATO and US forces, who train and consult the local military.