"As a result of a fire, ammunition detonated on the Moskva missile cruiser. The ship was seriously damaged," the Russian defense ministry was quoted as saying, adding that the cause of the fire was being determined and that the crew had been evacuated.
Earlier, the governor of Odessa said that Ukrainian forces had hit the Moskva with missile strikes.
"Neptune missiles guarding the Black Sea caused very serious damage to the Russian ship. Glory to Ukraine!" governor Maksym Marchenko wrote on Telegram.
Ukrainian presidential advisor Oleksiy Arestovych said that "a surprise happened with the flagship of the Russian Black Sea Fleet", the Moskva.
"It burns strongly. Right now. And with this stormy sea, it is unknown whether they will be able to receive help. There are 510 crew members," he said in a YouTube broadcast.
"We don’t understand what happened."
The Moskva gained notoriety early in the war when it called on Ukrainian border troops defending the strategic Snake Island to surrender, only to be defiantly refused.
The troops in question were initially believed to have been killed, but in fact were taken captive.
They were released as part of a prisoner exchange with Russia in late March, according to the Ukrainian Parliament.
Ukraine’s human rights ombudswoman Lyudmyla Denisova said the soldiers had described being taken to an unknown location where they were held in freezing conditions and suffered frostbite.