Several thousand people blocked traffic in front of the Serbian parliament on Saturday in a protest against lack of government action to prevent water, land and air pollution by industries such as the mining sector.
Protesters, who came to Belgrade from all over Serbia, held banners reading "Cut corruption and crime not forests," and "Young people are leaving because they cannot breathe".
In recent years Serbia has started selling its mining resources to foreign companies, despite opposition by local residents who had warned that increased ore exploration could cause greater pollution.
The former Yuoslav republic, which in the 1990s went through a decade of wars and economic crisis, has lacked resources to tackle pollution. As it seeks to join the European Union, Serbia will need billions of euros of investment to meet the bloc's environmental standards.
Aleksandar Jovanovic, one of the protest leaders, told the crowd that investors were all welcome in the country, but added, "But you cannot poison our children."
"None of the people who have power care about anything else but money, they don't care about ecology," one protester, who gave his name only as Marjan and who had driven from the town of Jagodina, 140 kilometres (90 miles) from Belgrade, told Reuters.