Trump is on the third day of an 11-day swing through five countries in Asia.
Earlier in the day, Trump ate lunch with South Korean and American troops on Camp Humphreys, the hub for nearly 30,000 U.S. military troops on the peninsula, before he headed to Seoul for talks with Moon.
On streets near the South Korean presidential mansion, called the Blue House for the color of its traditional tiled roof, protesters held signs reading "No Trump" and "No war."
Other onlookers waved U.S. and South Korean flags. Hundreds of Seoul police officers stood at major intersections in rows several officers deep to stop marchers from getting too close to the compound.
Inside the Blue House, Moon was effusive in his compliments, congratulating Trump on the upcoming anniversary of his election victory, the strong U.S. economy and record-high stock market.
"You are already making great progress on making America great again," he said.
He also praised Trump for putting North Korea "at the top" of his list of security concerns.
Moon must walk a fine line during Trump's two-day state visit to one of America's closest allies. In September, Trump publicly criticized Moon's policy, saying his "talk of appeasement" with the North was doomed to fail.
Opinion polls show South Korean voters overwhelmingly approve of Moon's performance in office so far, but are wary of Trump and worried he will start a war.
In the spring of 2015, about 88 percent of South Koreans in a Pew Research Center survey said they trusted the American president to "do the right thing regarding world affairs." Two years later, that share has fallen to 17 percent, according to the center's global attitudes poll.