Ukrainian prisoners of war are seen after a swap at an unknown location in Ukraine on Friday. Reuters
"Another return of our people - something we always wait for and work tirelessly to achieve... We must bring home every single one of our people, both military and civilian," Zelensky said on X, announcing the 56th such swap with Russia.
Zelensky's chief of staff, Andriy Yermak, said on the Telegram messaging app the Ukrainians released included seven civilians as well as personnel from the armed forces, national guard, police and the border guard service.
Ukraine did not say how many Russians had been released. Moscow is yet to comment on the swap.
Video footage released by Ukraine from an undisclosed location showed service personnel being greeted with flowers, hugs and leaflets saying: "Thank you for enduring it all". One released prisoner held the leaflet to his heart and wept.
Kyiv and Moscow have frequently exchanged prisoners since Russia's full-scale invasion, and Friday swap was the second since Ukraine began a cross-border incursion into Russia's Kursk region in early August.
Ukraine said its troops had captured at least 600 Russian soldiers during the incursion, and that this would help it secure the return of captured Ukrainians.
Yermak said that some of Ukrainians released had taken part in the defence of Mariupol and the Azovstal steel plant in the southern port city, which had been under siege in fierce fighting and is now occupied by Russian troops.
Ukrainian ombudsman Dmytro Lubinets said Ukraine had now secured the return of 3,569 people from Russian captivity since the start of the invasion.
Reuters