It began an hour before dawn, airstrikes and missiles raining down on military bases, airfields, border posts and cities across Ukraine, explosions lighting up the still-darkened sky from Odessa to Mariupol, Kharkiv to Dnipro, Lutsk to the capital, Kyiv.
In the grey early light that followed, Russian tanks and troops began rolling across the border, columns of soldiers pouring into the eastern regions of Chernihiv, Kharkiv and Luhansk. Others landed in the ports of Odessa and Mariupol.
In Moscow, shortly before 5am, Vladimir Putin had announced the launch of the biggest attack by one state against another in Europe since the second world war. “I have decided,” he said, “to conduct a special military operation.”
The assault, the Russian president said, was aimed at “the demilitarisation and denazification of Ukraine”, and any foreign country that tried to interfere risked “consequences you have never seen”.
Russia-Ukraine crisis: Putin orders military operation in Ukraine – video
Barely an hour later, at 5.58am in Kyiv, as explosions rattled the city and sirens blared, Ukraine’s foreign minister, Dmytro Kuleba, tweeted: “Putin has just launched a full-scale invasion of Ukraine. Peaceful Ukrainian cities are under strikes.”
This was “a war of aggression”, Kuleba said. “Ukraine will defend itself and will win. The world can and must stop Putin. The time to act is now.”
Minutes afterwards the country’s president, Volodymyr Zelenskiy, addressed his nation in a tense video, saying explosions were now being heard “in many cities across the country”. He declared martial law.
On the overnight train from the south-eastern port city of Mariupol to the capital – the last, perhaps, to make the journey for some time – passengers woke up to news from the now besieged city they had left behind. There was an air of grim calm; no shouting or weeping, no explosions of emotion.
People flicked through their phones, watched snatches of video showing shelling; held long, subdued conversations with those now stuck behind the frontline and wondering what they should do next.
The south and east were not the only regions of Ukraine under attack; reports soon began coming in of an armoured incursion, backed by Belarusian troops, through the Senkivka border crossing in the north, as well as of Russian armour moving into Ukraine from Crimea.
By 7am, two hours into the assault, Russian-backed separatist rebels were launching multiple attacks on Ukrainian military positions around the self-proclaimed republics in Luhansk and Donetsk in the south-east.
Video footage showed Russian rockets hitting populated areas in major cities, despite Moscow’s claims that it was only targeting military infrastructure; pictures from Kharkiv showed the tail section of an unexploded rocket sticking out of the pavement close to an Orthodox church.
Russia has amassed more than 150,000 combat troops on the borders of Ukraine, with another 34,000 lightly armed separatist forces in the self-proclaimed republics: an estimated two-thirds of the country’s total ground forces. Half its air force is also deployed in the region.
As Europe awoke, leaders denounced the assault, warning of heavy casualties and a huge economic impact. Financial markets opened – and instantly plunged. Oil prices soared. Governments convened emergency meetings and readied new sanctions.
A man stands next to remains of a Russian missile that hit a playground in Kharkiv. Photograph: Aris Messinis/AFP/Getty
In Kyiv, a city of three million people, the city’s mayor, Vitaly Klitschko, urged residents to stay at home unless they were involved in critical work and to prepare go-bags with necessities and documents in case they needed to evacuate.
Some headed underground, seeking refuge in the metro. With reports suggesting Russian tanks were advancing on Kyiv from Belarus, barely 93 miles (150km) and two and a half hours’ drive and away, others hurriedly packed suitcases and took to trains, cars and buses; main roads leading out of the city started to back up from mid-morning.
“We are facing a war, and horror. What could be worse?” said one resident, Liudmila Gireyeva, 64. She said she was planning to travel later in the day to the western city of Lviv, and then to try to move on to Poland to join her daughter. Putin “will be damned by history”, Gireyeva said. “Ukrainians are damning him.”
As the train from Mariupol pulled into Kyiv, only an hour late, at 11am, those on board tumbled out into a city reeling from the start of hostilities few believed would reach such a terrifying scale. The station was crammed with people desperate to get on a train out – in almost any direction but eastwards.
People take shelter in a metro station in Kyiv after Russian forces invaded Ukraine. Photograph: Viacheslav Ratynskyi/Reuters
“My parents called me around 5am to say war is coming and I didn’t believe them,” said Anna Bolosheva, 27, taking a train to stay with relatives in a rural area to the north of Kyiv. “I opened the news and there wasn’t much about it – but then I heard the explosions. I couldn’t imagine it, and I can’t understand it. Yesterday I didn’t think this could happen.”
Eight hours’ drive and 340 miles (550km) to the west, in the city of Lviv, near the Polish border, the queues for banks and pharmacies and supermarkets were already snaking round the block.
‘I don’t want to leave’: Ukrainians record messages from their cars as they flee war – video
Lviv had long seemed one of Ukraine’s safer cities, prompting several western embassies concerned about a possible Russian invasion to relocate there from Kyiv, but morning air raid sirens and news of Russian strikes in Lutsk to the north and Ivano-Frankivsk to the south had punctured that illusion.
Glued to his phone was Ivan Taibov, 27, from Odessa. His screen showed video of a plume of smoke rising from his home city. “They’re calling for people to come to its defence,” he said. “I’m trying to see if it is possible to get back. There will be a fight.”
Tanya Hrunyk, a 43-year-old economist waiting in one of the bank queues, was wondering whether to stay in Lviv and for how long. “I have family in the country where I could go. I’ll go if there’s an evacuation. Until then, I’m not sure,” she said.
Asked what she thought of Putin’s reasons for attacking her country, Hrunyk said sharply: “He’s a crazy man. He’s mentally ill. Our task is to stay calm and united.”
Ivan Borislavsky, a bartender who is expecting a baby with his partner in a month, said he was staying. “I need to fight for my wife and children and my land,” he said.
Ukrainian officials confirmed video footage from several sources of a Russian helicopter assault at Hostomel, barely four miles from Kyiv. At least 20 Mi-8 and Ka-52 helicopters flew in from Belarus to attack an airfield that is home to the Antonov aircraft maker and has a runway long enough to handle big cargo planes.
Footage shows Russian helicopters engaging with forces in Ukraine – video
By lunchtime, casualties were starting to mount: 18 dead in a missile attack near Odessa, according to authorities; six more in Brovary, half an hour’s drive north-east of Kyiv. In Vuhledar, near Donetsk, an occupier’s shell hit the hospital, killing four people and injuring 10, including six doctors.
Russia’s military claimed to have wiped out Ukraine’s air defences; Ukraine’s to have shot down five Russian aircraft and killed 50 soldiers on the eastern front.
In Mariupol, in the far south-east, close to Russian-occupied territory, Yulia, a local journalist, said she had heard multiple heavy explosions on the opposite side of the city from the western Primorsky district where she was with her young son.
“We’ve collected our stuff and are ready to run to a bomb shelter if necessary,” she said. But she added she was worried because she could not reach her mother, who lives in the eastern part of the city, by phone. “I hope it’s just because her phone battery has run out,” she said.
An Ukrainian tank stands guard near the Potemkin Stairs in the centre of Odessa. Photograph: Anadolu Agency/Getty Images
In Kherson, east of Odessa, Svitlana described a column of Russian tanks, APCs, military trucks and rocket launchers moving inexorably north in the direction of Nova Kakhovka. “We are just sitting in our houses,” she said. “The shops are closed, nothing is working.” There was shelling earlier, but now it was quiet.
Nearly 560 miles away in Moscow, banks and exchange bureaux opened for business but rapidly ran out of dollars as the Russian rouble plunged to an all-time low. Despite a barrage of state media propaganda, many residents expressed profound shock that Russia should have launched a full-scale attack on its neighbour.
“I didn’t think Putin would be willing to go all the way. How can we bomb Ukraine? We have our disagreements, but this is not to a way to solve them,” said one appalled Muscovite, Ksenia Fadeeva.
Another, Nikita Golubev, said: “I am embarrassed for my country. To be honest with you, I am speechless. War is always scary. We don’t want this.”
Tatyana, who asked for her surname not to be published, said she “couldn’t believe the news I read this morning. A war with Ukraine? What are we doing? I feel powerless.”
Smoke rises from an air defence base in the aftermath of an apparent Russian strike in Mariupol. Photograph: Evgeniy Maloletka/AP
Ordinary citizens were not alone. Valery Meladze, arguably Russia’s most popular singer, posted an emotional video in which begged Russia to stop the war. “Today something happened that should have never happened. History will be the judge of these events. But today, I beg you, please stop the war,” he said.
By 2pm, Andriy Zagorodnyuk, a former Ukrainian defence minister, was describing a situation that was still “extremely tense. There are thrusts happening. They are quite close to Kherson; the situation is critical there. They are trying to surround Kharkiv. Ukrainian armed forces are fighting quite seriously. There is no panic.”
Shortly after, Ukraine called on the EU to urgently provide air defence and anti-missile systems, as well as use “all means” to jam Russian satellite signals, requesting an “end to business as usual” with Russia and “fierce measures against Belarus, which directly supported Russia’s full-scale invasion”.
Russia’s defence ministry, meanwhile, claimed about 12 hours into the attack to have destroyed 74 Ukrainian military ground facilities, including 11 airfields, three command posts and 18 radar stations for anti-aircraft missile systems.
Women use their phone as they wait with bags and suitcases near Kyiv-Pasazhyrskyi railway station in Kyiv. Photograph: Daniel Leal/AFP/Getty
Back in Kyiv, the capital’s central railway station, Kyiv-Pasazhyrskyi, was crowded with hundreds of passengers seeking to leave. There were long queues for tickets and information. Several trains had been cancelled, marked red on the departure board, but others were functioning as normal.
By 6pm, there were still huge queues of cars trying to escape the capital and head westward, with the main road out jammed with vehicles. Drivers stood next to their vehicles, patiently waiting for the route to clear. Mayor Klitschko ordered a 10pm-7am curfew but said metro stations would stay open all night for shelter.
As darkness began to draw in at the end of the first day of what analysts have said may prove Europe’s fiercest conflict for more than 75 years, Zelenskiy turned to an earlier dark era, and a celebrated phrase from the end of that war.
“What we have heard today are not just missile blasts, fighting and the rumble of aircraft,” the Ukrainian president warned. “This is the sound of a new iron curtain, which has come down and is closing Russia off from the civilised world. Our national task is to make sure this curtain does not fall across our land.”