"(The generals) said again, recently, can we have more time? I said, 'Nope.' You can't have any more time. You've had enough time. We've knocked them out. We've knocked them silly," said Trump, according to a pool report.
He emphasised that he had held very good talks with Turkish President Recep Tayyip Erdogan, whom he said also wants to deal a harsh blow against the IS and he said he expected the Turkish leader would do so, along with others.
"We're no longer suckers, folks," Trump told the troops, warning that he is committed to bringing home US troops from foreign wars even over the objections of his administration's experts.
"The United States cannot continue to be the policeman of the world," Trump said. "It's not fair when the burden is all on us, the United States."
He suggested that he was not worried about losing the ability to hit the IS, called ISIS by the administration, saying that "If we see something happening with ISIS that we don't like, we can hit them so fast and so hard they really won't know what the hell happened," Trump said, according to Bloomberg News.
Trump also emphasised that his visit to the combat zone was to enable him to pay his respects to the "incredible troops" that the US currently has stationed in Iraq.
Trump had been scheduled to meet on Wednesday with Iraqi Prime Minister Adel Abdelmahdi, but that meeting ultimately was cancelled.
"Melania and I were honored to visit our incredible troops at Al Asad Air Base in Iraq. GOD BLESS THE U.S.A.!" said Trump on Twitter.
Dressed in a dark suit and red tie, Trump greeted more than 100 soldiers assembled at the Al Asad airbase, shaking hands with several of them who extended their hands to him and who responded to him by chanting "USA!"
Trump and the first lady had travelled to Iraq in secret to share Christmas with US troops stationed in the Arab country, the White House said on Wednesday.
Local media emphasised that this is Trump's first visit to a combat zone since taking office in January 2017.