Ukrainian President Volodymyr Zelensky promised victory against Russia on the second anniversary of the invasion on Saturday as his troops fight on despite a lack of Western aid and recent Russian gains.
"We will win," he said at a ceremony at Kyiv's Gostomel airport, which was targeted by Russia in the first days of the all-out assault in 2022.
He spoke alongside the Canadian, Italian and Belgian prime ministers and EU Commission chief Ursula von der Leyen who came to Kyiv to mark the date.
Ukraine's military chief Oleksandr Syrsky said he was confident of victory "because light always conquers darkness".
When Russian President Vladimir Putin announced a "special military operation" at dawn on February 24, 2022, many expected victory within days, but Ukraine fought back, forcing Russian troops into humiliating retreats.
Since then, however, Ukraine has suffered setbacks with the failure of its 2023 counteroffensive.
The Russian army has built up a position of strength by boosting its defence industry, while Ukraine's troops are short of manpower and running low on Western-supplied ammunition for artillery and air defences.
European ambitions
NATO chief Jens Stoltenberg urged Ukraine and its allies not to "lose heart" and von der Leyen praised Ukraine's "extraordinary resistance" as she arrived in the Ukrainian capital.
Kyiv signed security agreements with Ottawa and Rome, with Canada saying it would provide a total of $2.2 billion in financial and military support in 2024.
"We will stand with Ukraine with whatever it takes, for as long as it takes," Canadian Prime Minister Justin Trudeau said in a statement.
German Foreign Minister Annalena Baerbock also visited Ukraine, arriving from Moldova and touring the southern port of Odesa alongside her Ukrainian counterpart Dmytro Kuleba, according to an AFP reporter travelling with Baerbock.
Speaking at the Palanca border crossing as the two ministers walked into Ukraine, Baerbock said: "We could say this is a next step to European integration and into the European Union."
The European Union in December last year opened accession negotiations with Ukraine, which is also hoping to join the NATO military alliance.
'War is our life'
But the overall picture remains bleak for Ukraine due to the US Congress blocking a vital $60 billion aid package, on top of delays in promised European deliveries.
Russia is attacking hard in the east after capturing the heavily fortified town of Avdiivka on February 17.
AFP journalists in the east Ukraine mining town of Pokrovsk heard blasts sounding over the town, now dotted with damaged and abandoned buildings with boarded-up windows.
Troops there sent a clear message to the foreign leaders gathered in Kyiv.
"Give us artillery, drones, counter-battery, shells," said a 31-year-old Ukrainian soldier, who identified himself as Woodie.
"Our infantry, armed with assault rifles and grenades, were facing artillery, aircraft, and tanks," added a 39-year-old serviceman from Kyiv, who has been fighting for two years.
Russia has kept up its barrage of devastating drone and missile attacks on Ukraine's cities.
In the latest strikes, Ukrainian authorities said three civilians were killed in the eastern city of Dnipro and in Odesa overnight Friday to Saturday.
In Kyiv, the mood was grim.
"For women of Ukraine, this is our heartache -- for our husbands, for our children, for our fathers," said nutritionist Olga Byrko in Kyiv.
"I would really like this to end as quickly as possible."
Yuriy Pasichnyk, a 38-year-old businessman, told AFP Ukrainians "have learned to live with it... now the war is our life".
Kyiv mayor Vitali Klitschko said air raid sirens had sounded 989 times in the capital over two years of war -- an average of more than once a day.
Ukraine estimates the total number of civilians killed at around 50,000.
'Advantage is on our side'
Neither side has given numbers for military deaths and injured, while both claim to have inflicted huge losses.
In August 2023, The New York Times quoted US officials as putting Ukraine's military losses at 70,000 dead and 100,000 to 120,000 injured.
Leaked US intelligence in December indicated that 315,000 Russian troops had been killed or wounded.
Russian Defence Minister Sergei Shoigu visited Moscow's forces in occupied Ukraine, the army said on Saturday, telling them "in terms of the ratio of forces, the advantage is on our side".
Moscow has massively ramped up its arms production and received drones from Iran, while Kyiv says it has confirmed Russia's use of North Korean missiles.
Russia vows 'revenge'
The conflict has thrown Russia into even greater isolation from the West, with the United States and its allies imposing a slew of sanctions.
US President Joe Biden announced yet more sanctions against Russia Friday to stop Putin's "war machine".
Former Russian president Dmitry Medvedev on Saturday vowed Moscow would "take revenge". The Kremlin has used the war to rally patriotism and mount an even harsher crackdown on dissent.
Several people were detained on Saturday at a protest in Moscow by wives of mobilised soldiers fighting in Ukraine asking for their loved ones to come home, according to independent media.
But on Moscow streets, most people told AFP they backed the war.
"I'm proud of our men," said 27-year-old Nadezhda, an environmental engineer.
"Of course I am anxious for them, but it's a pleasant feeling that they are doing great, they are out there fighting for our country."
One of the few to give an alternative opinion was Konstantin, a drama teacher, who said: "I'm against any war. Two years have passed and it annoys me that people can't talk to each other and are still at war."
(Except for the headline, this story has not been edited by NDTV staff and is published from a syndicated feed.)
Track Latest News Live on NDTV.com and get news updates from India and around the world