Police made dozens of arrests and protesters destroyed at least two police vans as what started as a peaceful but unauthorised demonstration, lacking clear leadership and largely promoted on social media, descended into violence when people, many masked or hooded, tried to breach police lines.
For three hours, crowds complaining about fuel prices and a squeeze on living standards had disrupted traffic and walked the streets. Police said they had arrested about 60 people before the violence, mostly for blocking roads or carrying large fireworks.
Several hundred people wearing the fluorescent safety vests drivers must carry in their vehicles eventually converged on the office of Prime Minister Charles Michel. Dozens, many of them masked, threw rocks, firecrackers and road signs at police who doused them with high-pressure water jets and fired gas rounds.
The disturbances lasted over an hour before riot police surrounded and then arrested some demonstrators while the rest of the crowd dispersed. Police put the total number of protesters at about 500.
Three individuals were kept in detention after the protests, police said in a statement, adding that other judicial decisions could be made in the following hours.
Michel tweeted: "No impunity for unacceptable violence in Brussels. Those who came to smash and loot must be punished."
Protests in Belgium, notably around fuel depots in the French-speaking south, have been inspired by the yellow vest -- or "gilet jaune" -- actions in France against increases in fuel duty imposed by President Emmanuel Macron's government as part of efforts to reduce emissions causing global warming.
"Michel, resign!" people chanted on Friday. Michel, a liberal ally of Macron, voiced sympathy for people's troubles on Thursday, but added: "Money doesn't fall from the sky."
His centre-right coalition faces an election in May.
(Additional reporting by Francesco Guarascio; Writing by Alastair Macdonald; Editing by Alison Williams and David Stamp)
(This story has not been edited by Devdiscourse staff and is auto-generated from a syndicated feed.)