BAGRAM AIR FIELD, Afghanistan: President Barack Obama told US troops in a surprise holiday-season visit Friday that they are making important progress in Afghanistan, and he pledged the country would never again be a “safe haven for terrorists.” But Obama's war-strategy meeting with Afghan President Hamid Karzai was scrapped at the last minute. “You will succeed in your mission,” Obama told more than 3,500 cheering troops in a huge hangar. “We said we were going to break the Taliban's momentum. That's what you're doing. You're going on the offense, tired of playing defense.” Obama had traveled to Afghanistan to thank the troops and to deal with frayed relations with Karzai. But after he flew 14 hours for the visit, the White House said Obama couldn't make the short additional trip to meet with Karzai in Kabul because the weather was too bad for helicopter travel. Instead, the two leaders spoke by telephone, Obama at the air base and Karzai in Kabul. Obama's visit, his second to Afghanistan as president, came a year after he widened the ever deadlier war and ahead of the completion later this month of a review of the 9-year-plus conflict. “I don't need to tell you this is a tough fight,” Obama said. He met with the top NATO commander in Afghanistan, US Gen. David Petraeus, and US Ambassador Karl Eikenberry, and also visited wounded soldiers. He presented five Purple Hearts, military awards for wounded service members. There are now about 150,000 coalition forces in Afghanistan, roughly 100,000 of them Americans. The US and its NATO partners agreed last month in Lisbon, Portugal, to begin turning over control to local Afghan authorities in 2011, with a goal of completing that transition by the end of 2014. “We look forward to a new phase next year, the beginning of transition to Afghan responsibility,” Obama said. “Thanks to your service we are making important progress,” he told the troops.