Ordinary Muscovites and prominent opposition figures, including politician Alexei Navalny, marched through the center of the city.
Many carried Russian flags, portraits of Nemtsov, and anti-Kremlin banners. Some chanted slogans against President Vladimir Putin.
Six thousand people took part, police said in a statement on the interior ministry website.
Pro-opposition monitors estimated the turnout at 10,000.
"It's about the future of the country that Putin is taking away from the people," opposition politician Ilya Yashin told Agence France-Presse.
He said a growing number of young people were taking part in opposition marches.
Ivan, a 55-year-old driver who refused to give his last name, told Agence France-Presse he went along to remember Nemtsov who "was a clean person with democratic principles."
"He was killed because the authorities had had enough of him," he said.
In Saint Petersburg, around 800 people gathered to mark the anniversary outside the Finland train station.
"I come to this event every year. Unfortunately nothing is changing in the country, and we cannot be silent," 50-year-old Galina Apraksina told Agence France-Presse.
"We need to show that there are people in the country that do not agree [with the Kremlin's course] – as long as we still have the possibility to do so," said 38-year-old Ivan Svishenko, who also wanted to remember Nemtsov.
Nemtsov, one of the most vocal Putin critics, was gunned down shortly before midnight on February 27, 2015, walking across a bridge a short distance from the Kremlin.
In 2017, a court found a former security force officer from Chechnya guilty of murdering Nemtsov and sentenced him to 20 years in prison. Four other men were found guilty of involvement in the killing.
But Nemtsov's family and allies insist the authorities have failed to bring the masterminds to justice.
Many point the finger of blame at Chechnya's Moscow-backed strongman Ramzan Kadyrov – and the Kremlin itself.
Smaller commemorative events took place in other cities across Russia. – Rappler.com