Russian and Ukraine flags were carried on the streets of Moscow. An estimated 50,000 people marched through the capital. They want President Vladimir Putin to call a halt to the Crimea referendum on breaking away from Ukraine.
There were chants of ‘Maidan, Maidan’ in support of Ukraine’s interim government.
Russian opposition leader Boris Nemtsov said it was an “anti-war rally”. Many fear Sunday’s referendum could lead to a possible war between the two countries.
“My duty is to show support for the Ukrainian people in their desire to live independently from the dictatorship of the elder brother,” said Moscow teacher Irina Sesekina who was one of the marchers.
Another Viktor Holding explained his presence. “People who want peace between Ukraine and Russia have gathered here and that is why I am here.”
Security was stepped up in central Moscow with hundreds of officers deployed and barricades put in place ahead of the protest.
In a square close to the Kremlin the words of “The Sacred War” rang out. The Soviet song dates back to the Second World War and is a call to arms.
The demonstrators, all in matching red, showed their support for the referendum and for Crimea to join Russia.
“There will never be a Maidan in Moscow,” said politician Sergei Kurginyan from the platform.
Moscow supports Sunday’s vote which Ukraine and the West have dismissed as illegal.