The activists held banners reading "Russia without [president Vladimir] Putin" and other placards criticising his government.
A police helicopter made an almost continuous low circle over the crowd, drowning out chants of "We need a different Russia!" and "defend the constitution!"
Speeches were made by opposition leaders including Garri Kasparov, the former world chess champion, and Mikhail Kasyanov, the former prime minister.
Organisers said police had detained 40 activists for alleged violations in Moscow and about 200 other protesters had been detained on their way to Moscow.
Natalya Morar, spokesman for Other Russia, said many had been taken off trains and buses and put into detention cells.
Show of force
Two water cannon trucks, huge rolls of razor wire and at least a dozen large alsation and rottweiler dogs were held in reserve.
"I'm in shock," said Vladimir Ryzhkov, one of the few remaining independent deputies in the parliament.
"All this shows that Russia is not a democratic state, but a police state where any peaceful opposition demonstration is taken as a threat to the regime."
Polls consistently show that Putin is highly popular, with ratings above 70 per cent.
However, Kasparov said: "If there were two weeks of television without censorship, this government would collapse. They are afraid of us because they are scared that what we say will resonate with millions of people."