Barack Obama pledges to 'finish the job' in Afghanistan
Speaking a year after Osama Bin Laden's death, he thanked US troops and hailed plans to end combat operations.
According to BBC, Mr Obama arrived in Afghanistan on a surprise visit to sign an agreement on future Afghan-US ties with President Hamid Karzai, ahead of a Nato summit.
Hours after his speech a blast was reported in the Afghan capital, Kabul.
Witnesses said the blast was in eastern part of the city, with one report saying it hit the Jalalabad road, where several foreign military bases are located.
There was no confirmation of whether it was a suicide attack, or of any casualties.
Earlier, Mr Obama said signing the pact was "a historic moment" for both nations.
The visit and TV address come as correspondents say public patience with the war in Afghanistan is wearing thin.
In the speech, beamed back to prime-time evening audiences in US, the president said that at the upcoming Nato summit, to be held in Chicago, the alliance would "set a goal for Afghan forces to be in the lead for combat operations across the country next year".
Nato has already committed to withdrawing from combat operations in Afghanistan by the end of 2014.
Full version