The 22-year-old was in the train carriage hit by a blast that killed 14 and injured dozens in an "act of terror" Russian authorities said was carried out by a suicide bomber.
Zakharchenko and fellow passengers of the third carriage escaped from the wreckage through the train's windows once it arrived at the station platform.
"I just got on the train, not paying attention to anyone," he told reporters Tuesday at St Petersburg's Dzhanelidze hospital, where some of those injured in the attack are being treated.
"It happened in a second. I didn't expect anything."
Zakharchenko was standing in the middle of the carriage when "the blast happened to the right of me."
"Both of my eardrums burst," he said. When the train pulled up to the platform, "people took out the emergency escape windows and got outside one by one without panic."
"We were all dirty and covered in blood," he said of his fellow commuters.
He ran up the escalator from one of the world's deepest underground systems as emergency workers gathered above ground to assist the injured and distraught passengers.
"As soon as I got out, I started calling my loved ones, but the connection was bad," said Zakharchenko, whose parents live in the Siberian city of Irkutsk.
"I called my father. He was panicked because I was panicking too. I was trembling all over."
At the hospital on Tuesday, a haggard-looking Zakharchenko seemed serene, calmly speaking with reporters who had gathered around him.
Health Minister Veronika Skvortsova said the death toll from the blast had climbed from 11 to 14 Tuesday as three people succumbed to their injuries, adding that 49 more people remained hospitalised.
The head of the Saint Petersburg metro, Vladimir Garyugin, praised employees and passengers for staying calm and helping one another out during the evacuation.
Garyugin said the train driver, 50-year-old Alexander Kaverin, was a "hero" for having driven the train through to the next station despite smoke from the blast in the third carriage, saving lives.
Russian investigators have launched a probe into an "act of terror" and said Tuesday they think they have found and identified remains of a suicide bomber on the train.
Kyrgyzstan security services said Tuesday the attack was staged by a "suicide bomber" named Akbarjon Djalilov, a naturalised Russian citizen born in southern Kyrgyzstan in 1995.
Russian authorities confirmed the alleged bomber's identity but it was not clear whether he counted among the 14 dead.