Ukrainian President Volodymyr Zelensky adresses Ukraine s Verkhovna Rada Parliament in Kiev on December 1, 2021. AFP
Zelensky's call came as NATO looks to counter what it says is a build-up of Russian troops on the border with Ukraine, with US Secretary of State Antony Blinken set to meet Russia's top diplomat Sergei Lavrov in Stockholm on Thursday.
"We must tell the truth that we will not be able to end the war without direct talks with Russia," Zelensky said during an annual address to lawmakers in Kiev.
"Let's be honest, the war in Donbass has been going on for eight years," Zelensky said, referring to eastern Ukraine.
"We must talk, knowing that we have a strong and powerful army," Zelensky added, saying he was "not afraid" to speak directly with Russian President Vladimir Putin.
In Moscow, Putin's spokesman Dmitry Peskov appeared to pour cold water on the idea, reiterating that the war was Ukraine's domestic issue.
"We know of attempts to present Russia as a party to this conflict. This is not the case," Peskov told reporters.
"The war in Donbass can only be stopped through negotiations of Ukrainians with Ukrainians."
More than 13,000 people have been killed in a war between Kiev troops and Russian-backed separatists who have carved out two "People's Republics" in eastern Ukraine.
Kiev and its Western allies have accused Russia of stirring up the separatist conflict to prevent Ukraine from joining NATO and the EU and sending troops and arms to support the breakaway regions. Moscow has denied those claims.
The war broke out after a popular uprising in Kiev ousted a Kremlin-backed president and Moscow moved to annex Crimea in 2014.
Even though active fighting has decreased, the West has been concerned by Russia's troop movements on Ukraine's border this year.
Kiev's Western allies have since last month warned of a fresh Russian troop buildup around Ukraine's borders and a possible winter invasion.
The alleged surge follows a similar buildup in the spring, when Russia gathered around 100,000 troops on Ukraine's borders but later announced a drawdown.
At the peak of those tensions Zelensky invited the Russian leader to meet for talks in eastern Ukraine, but the Kremlin declined the invitation.
Russian officials in turn have accused Kiev of massing tens of thousands of troops near separatist-controlled territory.
"The Armed Forces of Ukraine are building up their military strength, massing heavy equipment and personnel," Russian foreign ministry spokeswoman Maria Zakharova said Wednesday.
"According to some reports, the number of Ukrainian troops in the conflict zone has already reached 125,000 personnel," she claimed, saying this represented half of Kiev's troops.
Those comments followed the Ukrainian foreign ministry saying Tuesday that Russia has massed 115,000 troops around Ukraine, on the Crimean peninsula and in two eastern regions occupied by the breakaway fighters.
Putin on Tuesday declined to say whether Moscow planned to move troops across Ukraine's border.
"Look, they spoke about a possible Russian military intervention in Ukraine at the beginning of the year. But as you see this did not happen," Putin said.
The Russian leader added that the security interests of all parties should be taken into account and called for improved ties.
Blinken was in Latvia on Wednesday where a meeting of NATO foreign ministers focused largely on tensions over Russia's military build-up.
During the gathering, Ukrainian Foreign Minister Dmytro Kuleba called for a "deterrence package" to stop Russia.
Blinken is scheduled to hold talks with Lavrov on the sidelines of a meeting of the Organization for Security and Co-operation in Europe (OSCE) after meeting Kuleba.
The Kremlin has blamed the escalation in tensions on the West supplying Ukraine with modern weaponry, conducting drills in the Black Sea and flying bombers near Russia's borders.