At least 10 people were killed and 50 injured when an explosion tore through a train carriage in the St Petersburg underground system on Monday, Russian authorities said.
Interfax news agency quoted an unnamed source as saying the blast was caused by a bomb filled with shrapnel.
Ambulances and fire engines descended on the concrete-and-glass Sennaya Ploshchad metro station. A helicopter hovered overhead as crowds gathered.
President Vladimir Putin, who was himself in St Petersburg for a meeting with Belarussian leader Alexander Lukashenko, said he was considering all possible causes for the blast, including terrorism.
A video showed injured people lying bleeding on a platform, some being treated by emergency services and fellow passengers. Others ran away from the platform amid clouds of smoke, some screaming or holding their hands to their faces.