Op 23 maart 1874 trouwde Maria met marinier Alfred, hertog van Edinburgh. Ze trouwde in het Winterpaleis in Sint Petersburg.
Maria en Alfred kregen samen zes kinderen:
– Alfred
– Marie
– Victoria Melita
– Alexandra
– Doodgeboren dochter
– Beatrice
Hun huwelijk was geen gelukkig huwelijk, De Londense society vond Maria te arrogant. Maria’s vader vond dat zij niet haar titel ‘Hare Koninklijke Hoogheid de Hertogin van Edinburgh’ hoefde te gebruiken, hij vond dat men haar moest aanspreken met: ‘Hare Keizerlijke Hoogheid de Hertogin van Edinburg’ Ook vond hij dat zijn dochter, omdat zij de dochter van de tsaar was, en dus hoger in rang dan de prinses van Wales, prinses Alexandra van Denemarken. Koningin Victoria werd hier heel erg kwaad om.