In 1561, Mary (Saoirse Ronan), Queen of Scotland, returns from France to her half-brother the Earl of Moray’s (James McArdle) home in Scotland after her husband’s death. In England, her cousin, Elizabeth (Margot Robbie) is the Queen of England – she is unmarried and has been unable to produce an heir, and is threatened by Mary’s potential claim to the throne. John Knox (David Tennant), a Protestant cleric on Mary’s council, is incensed about a Catholic being in charge of the country and is rude, and so Mary has him removed from the council.
Elizabeth wants to control Mary and weaken her claim to the throne and thinks the best way to do this would be to marry her to an English citizen. She is in love with Robert Dudley (Joe Alwyn) but decides to offer him to Mary. He protests, only wanting to be with her, but Elizabeth sends him anyone. However, once she meets with Dudley, Mary refuses to marry him, since he is just a citizen and not a royal – unless she is named the next in line to the English throne. Elizabeth balks but is stricken with smallpox. Hearing of her impending death, Mary agrees to marry Dudley – once she is named the successor. Elizabeth, not genuinely wanting to let Dudley go, sends Lord Darnley (Jack Lowden) to Scotland. He claims to only be there for the religious freedom, but Mary knows that can’t be true. He is charming, however, and their bond grows until eventually, he proposes.
Because Jack is a lord, he actually strengthens Mary’s claim to the throne, and Elizabeth’s advisers tell her to put a stop to the marriage and send Dudley. Mary’s council itself is also suspicious of Darnley’s motives, assuming he wants to take over their country on behalf of England. The English come to Scotland and demand Darnley return to England, but Mary refuses, since she’s doing as asked and marrying an Englishman. This enrages Moray, who doesn’t want to go to war over his sister’s passion. He leaves the council, furious.
England supports Moray in a rebellion against Mary. Mary and Darnley marry, but the next morning Mary finds him in bed with her male friend David Rizzio (Ismael Cruz Cordova). She is upset but has a rebellion to deal with. Rizzio goes to Mary, sorry and begging for forgiveness – Mary does indeed forgive him, saying they both fell for Darnley’s charms and that going forward they must be careful. Mary’s forces are able to quash the rebellion, and she spares Moray’s life. She then forces Darnley to have sex with her so that she can conceive an heir. When she announces her pregnancy, she declares the child the “heir to Scotland and England,” which naturally greatly offends the English.
Moray meets with Darnley’s father Matthew (Brendan Coyle) to hatch a plan to undermine Mary. A rumor starts that David is actually the father of Mary’s child and that she is an adulterer, which gives Knox fuel to preach to the Scottish that Mary is an evil woman. The under-miners meet with Darnley, telling him he needs to sign the bond of their plan to remove Rizzio. He refuses, but his father warns him that in the public perception either he is the adulterer or Mary is – and this way no one needs to know of his homosexuality. He reluctantly signs. Mary, her handmaids, and Rizzio are playing games upstairs when the men burst in to execute Rizzio. Mary physically stands in the way but is unable to stop them as they stab Rizzio over and over, to her horror. Matthew insists Darnley deliver the killing blow.
The men bring Moray back into the fold, and they demand pardons for all the rebels. Mary wants to know if Darnley knew of the plot and they tell her he signed a bond. She agrees to the pardon if they can prove Darnley knew, and they agree. She makes peace with Moray and wants him to be an uncle to her child. She writes Elizabeth, asking her to be the godmother. They strike a deal: if Elizabeth has children, they will be heirs to the throne, but if not, it will be Mary’s child – much to the chagrin of Elizabeth’s council. Mary confronts Darnley with his signature and banishes him from her sight. He is angry, wanting to be with his child, but she tells him he’s lucky to keep his life. Mary’s council begs her to divorce him, claiming he still plots to take the throne, but she refuses to be a Queen who keeps getting married over and over. The council approaches Bothwell (Martin Compston) an advisor and protector of Mary’s, and they all arrange to have Darnley killed.
In the ensuing melee after Darnley’s death, Mary is forced to leave her child with the handmaids and flee. The very next day, Bothwell tells her that the council says she needs to marry a Scotsman as soon as possible and they’ve decided on him. Mary doesn’t want to, but faced with seemingly no choice, she goes through with it. This gives Knox more fuel to preach that Mary is a harlot and that she had Darnley killed herself. Moray and other advisers tell Mary she must abdicate and that the country doesn’t trust her. Bothwell is furious, but Mary tells him he’s a fool – this was their plan all along to remove her. Moray begs her to abdicate so they can be a family. Mary says he’s holding her son hostage, and that they are no longer family. She refuses to abdicate.
Elizabeth is sad to hear of what has been happening, and the two cousins arrange a clandestine meeting. Elizabeth tells Mary no one can know of the meeting. Mary asks for help getting her throne back, but Elizabeth tells her she cannot go to war on a Catholic’s behalf. Mary offers to kneel but Elizabeth sadly still refuses but says that she is safe in England. Elizabeth tells Mary as long as she does not aid her enemies, she will be unharmed. Mary says if she does so, it will only be because Elizabeth pushed her there, and if she murders her, she murders her own sister. Elizabeth orders Mary imprisoned away in England.
A few years later, Elizabeth receives evidence that indicates Mary conspired with her enemies to kill her. She doesn’t know if it’s true but has no choice but to act, and orders Mary’s execution. Elizabeth cries for Mary, and Mary is walked to her execution and reveals a bright red dress. In her last thoughts, she wishes her son James well and hopes for peace upon his reign.
Post-script tells us that upon Elizabeth’s death in 1603, James became the first monarch to rule England and Scotland.