People came out in fair numbers for the opposition- backed rally to bring pressure on Prime Minister Najib Razak's long ruling coalition to usher in electoral reforms and more transparency ahead of national polls early next year.
Police fired tear gas and detained more than 514 people as they sealed off all major roads leading to the city centre in the capital, closed train stations and deployed trucks mounted with water cannons to thwart the rally.
Many were held at public area where they had gathered to march to independence stadium in downtown Kuala Lumpur.
Thousands of other marchers were also trying to make their way to the venue, shouting slogans ''long live the people'' and ''we want electoral reforms''.
Police have declared the protest illegal, warning of chaos in the streets. Hundreds of policemen, many armed with batons and anti-riot gear and backed by water cannon, have been deployed in strategic locations around the capital.
The rally marked the culmination of a campaign launched by opposition parties who have accused Najib's national front government of clinging to power for 54-years through electoral frauds.
The rally, called by the non-governmental organisation Bersih 2.0 (meaning clean in Malay language), was to be held at the city centre but after Prime Minister Najib suggested that the march be held inside a stadium, Bersih chief Ambiga Sreenevasan agreed.