Journalist Roman Sushchenko, who worked for Ukrainian state news agency Ukrinform for more than a decade, was detained in Moscow in 2016. Russia's FSB security agency accused him of serving in Ukrainian military intelligence and gathering state secrets.
Sushchenko, who had pleaded innocent, told AFP he would appeal the "unjust" verdict delivered by Judge Oleg Muzychenko of Moscow City Court.
Ukrainian President Petro Poroshenko slammed the verdict on Monday.
"The unprecedented cynicism of the Russian 'court' which has falsely convicted the Ukrainian journalist Roman Sushchenko proves that the Kremlin regime will stop at nothing in its quest to break the spirit of Ukrainians," Poroshenko said in a Facebook post.
Ukrainian foreign ministry spokeswoman Mariana Betsa repeated accusations that the trial was "politically motivated" and called the sentence was "illegal".
Sushchenko's lawyer, Mark Feigin, earlier told AFP that prosecutors had asked for a 14-year sentence, out of a maximum of 20 years.
"Sushchenko is a journalist and was gathering information only for journalistic reasons," Feigin said.
The lawyer also suggested Moscow and Kiev could be planning a prisoner exchange since a journalist working for Russian state news agency RIA Novosti is now in detention in Ukraine awaiting trial on treason charges.
The journalist, Kyrylo Vyshynsky, has dual Russian and Ukrainian citizenship.
The verdict comes amid a recent uptick in violence in the conflict between Ukrainian troops and Russia-backed separatists that broke out following Russia's annexation of Crimea from Ukraine in 2014. The conflict in eastern Ukraine has killed more than 10,000 people.
Sushchenko was working as Ukrinform's Paris correspondent at the time of his arrest and the news agency said that he was detained while visiting Moscow on holiday.
In his final speech in court the 49-year-old reporter said he was framed by the Russian security service, his lawyer told Interfax news agency.
Also on Monday, the Organisation for Security and Cooperation in Europe (OSCE) called for Russia to release Ukrainian film director Oleg Sentsov, who was detained in Crimea in 2014 on accusations of masterminding arson attacks.
Sentsov, who is serving a 20-year sentence, went on hunger strike last month to demand Moscow release all its Ukrainian political prisoners as Russia prepares to host the 2018 World Cup.
"I call on the Russian authorities to review Sentsov's case and to release him immediately," OSCE representative on freedom of the media Harlem Desir wrote in an open letter to Russian Foreign Minister Sergei Lavrov.