Most of the marches were illegal, organised without official permission.
Police have been deployed in large numbers, and dozens of other protesters have been detained across the country.
TV pictures showed demonstrators chanting “Down with [Russian President Vladimir] Putin!”, “Russia without Putin!” and “Putin is a thief!”.
Correspondents say the marches appear to be the biggest since anti-government demonstrations in 2011/2012.
Navalny was detained as he arrived to join the rally in central Moscow. Protesters then tried to prevent a police van from taking him away. In a tweet after his detention, he urged fellow protesters to continue with the demonstration.
“Guys, I’m fine. No need to fight to get me out. Walk along Tverskaya [Moscow main street]. Our topic of the day is the fight against corruption,” he said (in Russian).
Alexei Navalny announced his intention to run for president in 2018 against Vladimir Putin. But he is barred from doing so after being found guilty in a case he said was politicised.
He said on his website that protests were planned in 99 cities, but that in 72 of them authorities did not give permission.