George W Bush has demanded that all Syrian forces leave Lebanon as Beirut hosted a major pro-Syrian rally.
Hezbollah, which organised the rally, has become a strong force
Hundreds of thousands of people gathered in the Lebanese capital to applaud Syria's role in the country and reject Western "interference".
The crowd dwarfed previous opposition protests urging Syrian troops to leave.
Amid international pressure, Syria has started pulling its troops back into eastern Lebanon, but no date has been set for a complete withdrawal.
President Bush acknowledged recent Syrian moves, but said they were not enough.
"The Lebanese people have heard the speech by the Syrian president. They have seen these delaying tactics and half-measures before," he said.
"All Syrian military and intelligence personnel must withdraw before the Lebanese elections for those elections to be free and fair," he said.
He promised the US would stand by the Lebanese people, saying: "The momentum of freedom is on your side."
The US co-sponsored a UN resolution calling for Syria to go
Mr Bush was delivering a speech on terrorism at the National Defense University in Washington, DC.
Syria has been under pressure to pull its troops out of Lebanon since Lebanon's former Prime Minister Rafik Hariri was killed in a massive bomb attack three weeks ago.
Many Lebanese blame Syria for the attack. Damascus denies responsibility.
The Beirut rally was organised by Hezbollah, a powerful political and military organisation of Shia Muslims, the largest religious minority in Lebanon.
"We are here to thank Syria, which has stayed by our side for many years," the head of the Syrian-allied Hezbollah group told cheering supporters.
Hezbollah officials handed out Lebanese flags and directed the men and women to separate sections, but the crowds were so large they spilled out of Riad al-Solh Square into surrounding streets.
The group's leader, Hassan Nasrallah, said there would be further demonstrations in other Lebanese towns including Tripoli in the north, Nabatiya in the south and in the eastern Bekaa valley.
He also warned the US military not to interfere in Lebanon, saying: "If the American fleet lands in Lebanon, it will be defeated."
The rally took place just a few hundred metres from Martyrs Square, where predominantly Christian, Druze and some Sunni Muslims, have been holding their anti-Syria protests.
A line of military vehicles separated the two squares to avoid any possible friction between the rival demonstrators.
Hezbollah has grown into a powerful political force as it conducted a military campaign to push Israeli forces out of south Lebanon, which happened in 2000.
It has several MPs in parliament, an influential television station and a network of welfare and charitable organisations.
SYRIA IN LEBANON
Military intervention begins in 1976
30,000 troops in Lebanon during 1980s, currently 14,000
Syrian forces help end Lebanese civil war in 1990 and maintain peace
Calls for Syrian withdrawal increase in 2000 after Israeli pullout from southern Lebanon
UN resolution calling for foreign forces' withdrawal in Sept 2004
Its demonstration of support came as Syria began moving some of its 14,000 troops in eastern Lebanon, as part of a pull-back plan adopted by Lebanese and Syrian leaders in Damascus on Monday.
Syrian troops arrived in neighbouring Lebanon as peacekeepers during the 1975-1990 civil war. Since then, Damascus has kept a firm hold on the political and financial spheres in Lebanon.
France, Germany and Russia have also called for a Syrian withdrawal, as has its long-standing Arab ally, Saudi Arabia.