Tens of thousands of people have rallied in central Moscow in a show of anger at alleged electoral fraud.
They passed a resolution "not to give a single vote to Vladimir Putin" at next year's presidential election.
Protest leader Alexei Navalny told the crowd to loud applause that Russians would no longer tolerate corruption.
"I see enough people here to take the Kremlin and [Government House] right now but we are peaceful people and won't do that just yet," he said.
Demonstrators say parliamentary elections on 4 December, which were won by Mr Putin's party, were rigged. The government denies the accusation.
A sea of demonstrators stretched along Sakharov Avenue, a few miles from the Kremlin, in sub-zero temperatures.
Rallies were taking place across Russia, with the first big protest in the far eastern city of Vladivostok.
At least 28,000 people turned out in the capital, according to the Russian interior ministry, but rally organisers said the true number was around 120,000.
President Dmitry Medvedev announced political reforms this week, but many demonstrators say it is not enough.
They are demanding a re-run of the poll, which was won by Vladimir Putin's party - but with a much smaller share of the overall vote.
Mr Putin poured scorn on protesters during a recent live chat on Russian TV, calling them "Banderlog" after the lawless monkeys in The Jungle Book, and likening their protest symbol, a white ribbon, to a condom.
However he also said protesters had the right to demonstrate if they kept within the law.
'We're the power'In Moscow, many protesters clutched white balloons and banners with the slogan "For Free Elections" while some mocked Mr Putin with images of condoms, to the extent that the first speaker, music journalist Artyom Troitsky, dressed himself up as one.
The resolution passed at Saturday's rally built on demands expressed at an earlier rally in Moscow on 10 December.
Another new point was a call for the creation of a new election monitoring body - the Moscow Voters' Association - to investigate ballot-rigging.
Mr Navalny, a prominent anti-corruption blogger who was jailed for 15 days over a street protest just after the elections, greeted the crowd with the words "Greetings to the Banderlog from the net hamsters [internet activists]".
Condemning Russia's leaders as "swindlers and thieves", he listed victims of injustice including imprisoned former tycoon Mikhail Khodorkovsky and anti-corruption lawyer Sergei Magnitsky, who died in custody.
"Who's the power here?" he shouted to cries of "We are" from the crowd.
He promised that the next protest rally would be a "million strong".
Alexei Kudrin, who recently resigned after serving a decade as Mr Putin's finance minister, was booed when he took the microphone to call for early parliamentary elections and urge a dialogue between the Kremlin and the opposition.
"There needs to be a platform for dialogue, otherwise there will be a revolution and we lose the chance that we have today for a peaceful transformation," he said.
A total of 22 speakers were lined up for the Moscow rally, with rival opposition figures addressing a crowd which mixed liberals with nationalists.
- In a video message, Russian rock musician Yury Shevchuk urged protesters to maintain their dignity and avoid "competing in hatred for the authorities"
- Billionaire and Putin election challenger Mikhail Prokhorov had been expected to address the rally but stayed in the crowd, saying he had heard presidential candidates were "not supposed to speak"
- Another presidential candidate, veteran liberal Grigory Yavlinsky, did speak, and called for a free electoral system
- Former Soviet leader Mikhail Gorbachev, 80, did not attend after all, sending a message of support instead. He later told Moscow Echo radio that Mr Putin should not stand for another term in office
Saturday's rally in Moscow ended peacefully, with the last speaker a Grandfather Frost (Russian Santa Claus) figure who wished citizens of a "free Russia" a Happy New Year.
"People were scared before the first big demonstration on 10 December," protester Andrei Luzhin told AFP news agency.
"Now they no longer have fear."
Lack of leaderSome 50,000 people rallied on 10 December, in what was then the biggest anti-government protest since the fall of the Soviet Union in 1991.
On Thursday, Mr Medvedev proposed to hold direct elections of regional governors and simplify the procedure for registering political parties, but protesters say the concessions do not go far enough, the BBC's Steve Rosenberg in Moscow says.
However, one of the main problems for the opposition is that there is no single leader able to unite it, our correspondent adds.
Rallies against ballot-rigging were reported across Russia's time zones, though none were on the same scale as that in Moscow.
- In Vladivostok, demonstrators carried posters calling for Mr Putin to be put on trial and regional MP Artyom Samsonov said the election results should be cancelled
- In the Siberian city of Novosibirsk, a rally of between 800 and 1,500 people passed off peacefully
- About 100 people braved a frost of -15C in Orenburg on the border with Kazakhstan
- About 500 people rallied in Chelyabinsk in the southern Urals under the slogan "These elections were a farce! We want honest elections"
- Several arrests were made in St Petersburg, Vladimir Putin's home city, where two rallies were held, reportedly attended by a total of about 2,500 people
Are you in Russia? Are you taking part in a rally? Send us your comments using the form below.