A man wearing an explosive belt has been "neutralised" by Belgian police in Brussel's Grand Central Station.
Security forces evacuated people from La Grande Place - the main square in the country's capital - which witnesses said was cleared in seconds.
Others took pictures of a fire in the nearby Central Station. One witness said the suspect shouted "Allahu Akbar" and seemed very agitated.
Federal prosecutor Eric Van der Sypt said authorities are treating the incident "as a terrorist attack" that was foiled when the suspect was "neutralized."
"We do not know if the man is still alive or that he is dead," Van der Sypt added.
Nicolas Van Herreweghen, who works for Belgium's national rail company, said the male suspect was very agitated, yelling about jihadists and then "Allahu Akbar" before blowing up something on a baggage trolley.
He said the man appeared to be 30 to 35 years of age.
The government agency that owns Belgium's railways was warned by a train driver who saw people running across the rail lines inside the station, spokesman Arnaud Reymann told broadcaster RTL.
Arnaud Reyman, spokesman for rail network operator Infrabel confirmed the station was evacuated.
He said: "There was panic in the station and on the tracks after an incident."
Bart Crols, a spokesman for the SNCN railway company, confirmed all rail traffic in the city has been suspended after witnesses tweeted a picture of a fire at Central Station.
A senior Belgian law enforcement official told the Politico website that a crisis meeting of top state officials was expected to start immediately.
One witness said that people had panicked after hearing the explosion and ran "in every direction".
La Grand Place is one of the city's major tourist attractions and was full of people enjoying a hot summer's evening.
The city has been on high alert since suicide bombers killed 32 people on the Brussels subway and at an airport in March 2016.
Additional reporting by AP