Vladimir Putin appeared at a huge flag-waving rally at a Moscow stadium Friday and lavished praise on his troops fighting in Ukraine, three weeks into the invasion that has led to heavier-than-expected Russian losses on the battlefield and increasingly authoritarian rule at home.
Meanwhile, the leader of Russia’s delegation in diplomatic talks with Ukraine said the sides have narrowed their differences. The Ukrainian side gave no immediate account of the talks.
The Moscow rally came as Russian troops continued to rain lethal fire on Ukrainian cities, including the capital, Kyiv, and pounded an aircraft repair installation on the outskirts of Lviv, close to the Polish border.
“Shoulder to shoulder, they help and support each other,” the Russian president said of the Kremlin’s forces in a rare public appearance since the start of the war. “We have not had unity like this for a long time,” he added to cheers from the crowd.
The show of support amid a burst of antiwar protests inside Russia led to allegations in some quarters that the rally — held officially to mark the eighth anniversary of Russia’s annexation of Crimea, which was seized from Ukraine — was a manufactured display of patriotism.
Several Telegram channels critical of the Kremlin reported that students and employees of state institutions in a number of regions were ordered by their superiors to attend rallies and concerts marking the Crimea anniversary. Those reports could not be independently verified.
Moscow police said more than 200,000 people were in and around the Luzhniki stadium. The event included patriotic songs, including a performance of “Made in the U.S.S.R.,” with the opening lines “Ukraine and Crimea, Belarus and Moldova, it’s all my country.”
Seeking to portray the war as just, Putin paraphrased the Bible to say of Russia’s troops: “There is no greater love than giving up one’s soul for one’s friends.”
Taking to the stage where a sign read “For a world without Nazism,” he railed against his foes in Ukraine as “neo-Nazis” and continued to insist his actions were necessary to prevent “genocide” — a claim flatly denied by leaders around the globe.
Video feeds of the event cut out a times but showed a loudly cheering crowd that broke into chants of “Russia!”
Putin’s appearance marked a change from his relative isolation of recent weeks, when he has been shown meeting with world leaders and his staff either at extraordinarily long tables or via videoconference.
In the wake of the invasion, the Kremlin has clamped down harder on dissent and the flow of information, arresting thousands of antiwar protesters, banning sites such as Facebook and Twitter, and instituting tough prison sentences for what is deemed to be false reporting on the war, which Moscow refers to as a “special military operation.”
The OVD-Info rights group that monitors political arrests reported that at least seven independent journalists had been detained ahead of or while covering the anniversary events in Moscow and St. Petersburg.
Standing on stage in a white turtleneck and a blue down jacket, Putin spoke for about five minutes. Some people, including presenters at the event, wore T-shirts or jackets with a “Z” — a symbol seen on Russian tanks and other military vehicles in Ukraine and embraced by supporters of the war.
Putin’s quoting of the Bible and a Russian admiral of the 18th century reflected his increasing focus in recent years on history and religion as binding forces in Russia’s post-Soviet society. His branding of his enemies as Nazis evoked what many Russians consider their country’s finest hour, the defense of their homeland from Nazi Germany in World War II.
The rally came as Vladimir Medinsky, who led Russian negotiators in several rounds of talks with Ukraine, said that the sides have moved closer to agreement on the issue of Ukraine dropping its bid to join NATO and adopting a neutral status.
“The issue of neutral status and no NATO membership for Ukraine is one of the key issues in talks, and that is the issue where the parties have made their positions maximally close,” Medinsky said in remarks carried by Russian media.
He added that the sides are now “halfway” on issues regarding the demilitarization of Ukraine.
Earlier in the day, one person was reported killed in the missile attack near Lviv. Satellite photos showed the strike destroyed a repair hangar and appeared to damage two other buildings. A row of fighter jets appeared intact, but an apparent impact crater sat in front of them.
Ukraine said it had shot down two of six missiles in the volley, which came from the Black Sea.
The early morning attack was the closest strike yet to the center of Lviv, which has become a crossroads for people fleeing from other parts of Ukraine and for others entering to deliver aid or join the fight. The war has swelled the city’s population by some 200,000.
In city after city around Ukraine, hospitals, schools and buildings where people sought safety have been attacked. Rescue workers continued to search for survivors in the ruins of a theater that was being used a shelter when it was blasted by a Russian airstrike Wednesday in the besieged southern city of Mariupol.
Ludmyla Denisova, the Ukrainian Parliament’s human rights commissioner, said at least 130 people had survived the theater bombing.
“But according to our data, there are still more than 1,300 people in these basements, in this bomb shelter,” Denisova told Ukrainian television. “We pray that they will all be alive, but so far there is no information about them.”
Early morning barrages also hit a residential building in the Podil neighborhood of Kyiv, killing at least one person, according to emergency services, who said 98 people were evacuated from the building. Kyiv Mayor Vitali Klitschko said 19 were wounded in the shelling.
Two others were killed when strikes hit residential and administrative buildings in the eastern city of Kramatorsk, according to the regional governor, Pavlo Kyrylenko.
The fighting has led nearly 3.3 million people to flee Ukraine, by the U.N.’ s estimate. The death toll remains unclear, though thousands of civilians and soldiers on both sides are believed to have been killed.
Ukrainian President Volodymyr Zelenskyy said Ukraine’s defenses have proved much stronger than expected, and Russia “didn’t know what we had for defense or how we prepared to meet the blow.”
World leaders have demanded Russia be investigated for possible war crimes over its attacks on civilians. The World Health Organization said it has confirmed 43 attacks on hospitals and other health care facilities, with 12 people killed.