The crowds stretched along the long, narrow expanse of Bolotnaya Square as far as the eye could see. They spilled out on to side roads, and, at one point, so many had squeezed on to a bridge that a police boat had to warn them to move or risk the bridge collapsing. The authorities said there were 30,000 people, the organisers said it was 100,000.
The exact figure was irrelevant. In a country where an "opposition protest" means a couple of hundred hardcore dissenters, many of whom would be manhandled and detained by riot police, tens of thousands of people had come out on to the streets, demanding new elections following allegations of widespread fraud in Sunday's polls. The demonstrations in Moscow and across Russia yesterday were the biggest for many years.
The kaleidoscope of coloured flags visible across Bolotnaya Square was testament to the huge variety of opposition groups represented. There was the orange of the Solidarity liberal grouping, the white, black and yellow tricolour of the sinister neo-fascist Russian nationalists, and of course the bright red of the Communists and radical pseudo-communist factions. But the majority had not come to support any particular political party. This was about something more fundamental. Yesterday was the day when a whole generation of young, intelligent Russians felt as if they regained a voice. Or, at the very least, they felt as if the time had come for them to demand a voice.
"I've never been political, but enough is enough," said 28-year-old Tatyana, who voted for the first time in the parliamentary elections. "I've started reading the news online, and comparing it to the nonsense on television. It has never seemed like protesting would have any effect before, but then I realised if you don't at least try to change things, you can't complain." Another protester, 38-year-old Sergei Shipov, said it was the first time he had protested since 1993. "I'm sick of Putin, sick of the sight of his face every day on my television, in my newspapers. It's time for something new," he said.
Mainly, the call was for new elections. There were also shouts of "Russia without Putin!" and "Putin is a thief!" But when a small group of people started shouting "Revolution!" the majority booed and tutted. Russians know better than anyone how painful revolutions can be, and Bolotnaya Square yesterday was not Russia's version of Tahrir Square. But at the same time, it is no exaggeration to say that Russia will never be the same again after such an extraordinary week of events that no one, least of all Vladimir Putin, saw coming.
Last Sunday's parliamentary elections, meant to smooth the way for Mr Putin's return to the Kremlin in a March presidential vote, saw his United Russia party get 49 per cent of the vote, down from 64 per cent. But despite the drop, people felt that even this number was inflated, and pointed to thousands of allegations of voting fraud, some of them captured on video and uploaded online.
Around 8,000 people came to protest the day after the elections, when only a few hundred of the usual hardcore oppositionists were expected. The charismatic anti-corruption blogger Alexei Navalny, who has emerged as the new leader of the anti-Putin movement, was jailed for 15 days, while another 200 people were detained. The next day, thousands of pro-Kremlin youth were dispatched to the location of a planned protest to disrupt it, and riot police arrested more than 500 just for turning up. State TV ignored the protests completely, and instead broadcast pictures of gurning teenagers bussed in to Moscow to rallies in celebration of United Russia's victory. Mr Putin, in his first reference on Thursday to the protests, insisted they were coordinated from Washington, after the US Secretary of State, Hillary Clinton, had "given a signal" to the Russian opposition.
But growing numbers of Russians get their news from the internet, and to the Kremlin's horror, none of the usual tactics of intimidation and blaming the West seemed to work, as 35,000 Russians signed up to a Facebook group promoting yesterday's rally.
In sharp contrast to the herd-like waving of identical flags, and chanting of "Putin! Russia" and "Medvedev! Victory!" at the pro-Kremlin rallies last week, it was clear this was largely a spontaneous gathering where people designed their own banners and placards. Some of them read simply "Putin must go", but in one of the most heartening aspects of the day, there was a sign that intelligent debate and wit had returned to Russian political discourse. Ever since Russia's version of Spitting Image was kicked off the airwaves shortly after Mr Putin entered the Kremlin, laughing at top officials has been taboo except online. Until yesterday.
Particularly targeted was the central election committee chief, Vladimir Churov, a pompous technocrat who for many has become the face of electoral fraud. One poster read: "146 per cent of Muscovites want fair elections!", referring to a southern Russian district where state TV reported voter turnout at 146 per cent. Perhaps the best placard of the day read: "I didn't vote for these bastards! I voted for other bastards! I demand a recount!"
For many, the day began at Revolution Square, the symbolic central location where protests are banned. But the Moscow authorities made a compromise. They agreed that people could gather at Revolution Square and make the half-hour walk to Bolotnaya Square. So a crowd of several thousand people began an extraordinary march past some of the most symbolic buildings in Moscow: the Lubyanka, former headquarters of the KGB that now houses its successor, the FSB. They filed past the Presidential Administration Building, St Basil's Cathedral and the Kremlin walls, and over the Moscow River, in scenes that a week ago were unthinkable. Riot police lined the streets along the entire route.
There were even signs that, just perhaps, the notoriously fractious democratic opposition might be able to focus on March's presidential elections. If Mr Navalny puts his candidacy forward, the Kremlin will not find it as easy to bar him from standing as it has done kicking marginal liberals off the ballot in the past. Mr Navalny, still serving his 15-day sentence, was not at the rally, but a message from him was read to the crowds.
"The clique in power ... continue to tell us that falsifying votes in favour of their Party of Crooks and Thieves is a necessary condition to ensure we have hot water and cheap mortgages," read Mr Navalny's address. "We have been fed this for 12 years, and are sick of it. It's time to come out of our coma. We are not cattle or slaves. We have a voice, and we have the strength to make it heard."
For the first time in years, politics in Russia has become unpredictable.