The film begins with the traditional text: A LONG TIME AGO IN A GALAXY FAR FAR AWAY... but instantly leaps to the action. No opening crawl. In the early years of the Galactic Empire, an Imperial ship lands on a planet. Lyra Erso (Valene Kane) runs to warn her husband, Galen Erso (Mads Mikkelsen) and their young daughter Jyn Erso (Beau Gadsdon). Lyra calls Saw Gerrera (Forest Whitaker) and tells him that they have come.
Galen says goodbye to his daughter and tells her that he loves her, calling her "Stardust," as he heads off to face the Empire. Lyra gives Jyn a necklace, telling her that the force will always be with her and she can trust it. Outside, Galen meets Orson Krennic (Ben Mendelsohn), a high-ranking Imperial military officer, who tries to get Galen to come back to work for the Empire. He asks about his family, and Galen lies that his wife is dead. When Orson tells his stormtrooper bodyguards to check the area, Lyra appears and draws a weapon on Krennic; they have a standoff.
Lyra shoots Krennic, hitting his arm, and is killed. A stormtrooper toy is discovered, and Krennic tells his guards to find Galen's daughter (who stayed out of sight to watch all this). Jyn runs away and hides in a prepared bolt-hole under a rock in a cave, from which Saw rescues her. Fifteen years later in the Ring of Kafrene an adult Jyn (Felicity Jones) is held in a cell.
Meanwhile, commanders of the Rebel Alliance, led by Mon Mothma (Genevieve O'Reilly), a senator of the Old Republic Senate-turned-Imperial Senate, discuss the Empire's plan to create a giant weapon capable of destroying entire planets. On the planet Jedha, Bodhi Rook (Riz Ahmed), a pilot who has defected from the Empire and wants to join the Rebels, arrives and is apprehended by the local forces there. On the planet Wobani, Jyn is being transferred with other prisoners. Suddenly, Rebel forces break in and free them.
Wanting to escape, Jyn attacks the Rebels and tries to flee but is stopped by K-2SO (voice: Alan Tudyk), an Imperial enforcer droid who's been repurposed to work for the rebellion. On moon Yavin 4, the location of the Rebel base of operations, Mon Mothma and other Rebel leaders talk to Jyn about her father. She says that she last saw her dad 15 years ago. The Rebels question her about Saw Gerrera and tell her that he is an extremist causing problems in Jedha. The Rebels say that finding Saw and the captured pilot is paramount to find out what the Empire is plotting.
They offer her a deal: find Saw, and she is free to go. As Jyn boards the ship taking her to Jedha with K-2SO and the pilot Cassian Andor (Diego Luna), Cassian is told to kill their targets and not perform any extractions. At Jedha, Bodhi is confronted by Saw, who now has prosthetic legs and gets supplementary oxygen from a mask. Saw doesn't believe Bodhi's story and interrogates him harshly, eventually bringing in a Bor Gullet, a tentacled creature that terrifies Bodhi and can apparently read his mind.
Aboard an Imperial Star Destroyer, Krennic discusses with Grand Moff Tarkin (Guy Henry), the Imperial governor of the outlying areas and overall commander of the Imperial Navy, the "ultimate weapon" they are creating. Krennic urges that they perform a test of the weapon. As this happens, Jyn, K-2SO, and Cassian arrive at Jedha. K-2SO is told to wait at the ship, and while Cassian scouts the area, Jyn is approached by Chirrut Imwe (Donnie Yen), a blind warrior who notices her necklace and the quality of the stone.
Later, when Jyn and Cassian roam the city, Jyn notices snipers and the area quickly errupts into a battle. Rebel and Empire forces fight, and while Jyn and Cassian are nearly killed, K-2SO arrives and defeats the stormtroopers. Chirrut then tries to let them in his location but is ambushed by stormtroopers. Showing excellent skill despite his visual impairment, Chirrut defeats the stormtroopers, but all, including Chirrut's friend Baze Malbus (Wen Jiang) are eventually captured by Saw's crew.
While Cassian, Chirrut, and Baze are in a cell they quickly notice that Bodhi is in the cell next door. Jyn is brought directly to Saw. Saw is surprised to see Jyn, but Jyn instantly confronts him about abandoning her when she was 16. Saw replies that he did it to give her her best chance and suspects Jyn of being told to head there to kill him. Jyn says that she wants nothing to do with the rebellion at all and Saw, looking defeated, tells her that there is no rebellion without hope. While this is happening, the Empire decides to test their weapon.
Saw shows Jyn a hologram sent by her father. Her father says in the message that he went with the Empire to give the rebels their best chances and that the weapon they were building is called the Death Star. He says that he made a fail-safe in the death star by placing a trap -- explode it, and the entire thing dies. He also apologizes to a tearful Jyn and tells her to fight for him and to finish what he started: "Save the rebellion and save the dream." Suddenly, the Death Star attacks Jedha. Chirrut, Bodhi, and Baze head to the ship while Cassian gets Jyn.
Despite Jyn's help, Saw acknowledges his weakness and tells her to leave him. Everyone else escapes in the ship with K-2SO while Jedha is destroyed and Saw is crushed to death. With their test being successful and Jedha gone, the Imperial leaders rejoice. However, Grand Moff Tarkin decides to claim all the credit, shutting out Krennic, the director of the project. Tarkin threatens further action against Krennic should he protest against his or the Empire's policies. On the ship, Cassian is secretly given instructions to kill Galen if they find him.
The people on the ship discuss Jyn's report of the hologram but as she left it behind in Jedha, they don't believe her. She convinces them, however, to head to Edu and find Galen. On Edu, an Imperial mining planet with constant darkness and rain, the crew crashes their ship and decides to find a new one. As Cassian and Bodhi head out, Jyn questions Cassian's motives. Upon hearing K-2SO say that Cassian's weapon was in sniper mode, she heads out with Chirrut and Baze.
Nearby at the Edu Mining Facility, Krennic is interrogating Galen and six other engineers working for the Empire because he believes one of them is secretly working for the rebels. When Krennic threatens to kill everyone, Galen steps forward and confesses. Krennic still kills the other engineers. While this is happening, Cassian has his rifle sights on Galen but eventually does not pull the trigger. Meanwhile, having snuck up on the rebels, Bodhi and Jyn arrive. Jyn calls out to her father just as rebel forces arrive in X-Wing fighters and cause an explosion and a fight.
When she regains consciousness, Jyn finds her father in critical condition. She tearfully reunites with her father before Galen passes away and Cassian pulls her from his body as they head out of Edu. On the ship, an angry Jyn questions Cassian on his motives and he replies that everyone has lost something for the rebellion, and that she only truly started to care because of her father. Krennic arrives on the planet Mustufa and reports everything to the chief enforcer, Darth Vader (Spencer Wilding and Daniel Naprous; voice: James Earl Jones).
Vader is angry and Force-chokes Krennic, letting him go after ordering him to make the Death Star work without any flaws. At a meeting back on Yavin 4, the rebel leaders, among them Senator Bail Organa (Jimmy Smits) and General Dodonna (Ian McElhinney), are doubtful of Jyn's story and her credibility. Jyn proposes to infiltrate the Empire's data storage facility on Scarif and get the plans for the Death Star, ending her argument by saying rebellions are built on hope.
She fails to get approval, as Mon Mothma opposes any strike against Scarif and the other rebel leaders agree it's too risky. Senator Organa then leaves to travel back to his homeworld of Alderaan to have a talk with his adopted daughter to try to help and seek out a former Clone War veteran who may help out the Alliance. Outside, Cassian approaches Jyn about the mission, a dozen other rebel fighters have decided to join them. With their crew in tow, they use the call sign 'Rogue One' and head to Scarif to find the Death Star plans themselves.
At Scarif, Bodhi uses his old Imperial passwords to get through the gate in the force field that protects the data storage facility and get permission to land. K-2SO, Jyn, and Cassian head into the facility to get the plans while the other rebels plant explosives around the landing pads on the perimeter of the facility's island atoll. Director Krennic arrives on Scarif around the same time to review transmissions involving Galen Erso as well as Grand Moff Tarkin.
Soon enough, the rebels detonate explosions all over the island. With a full-on battle emerging, the rebel fleet arrives -- the leaders had a change of heart. (There's a cameo scene of R2-D2 and C-3PO in which C-3PO comments on the rebels going to battle.) The rebels' first challenge is to slip through the gate in the force field before the Imperial forces close it and block their access to the surface of the planet.
In the access room for one of the storage units, K-2SO opens the door to allow Jyn and Cassian to enter the data storage area and extract the plans to the Death Star. While they search for the plans, K-2SO fights off stormtroopers. They eventually identify the plans under the code name of the nickname Jyn's father gave her, Stardust. When they find the files, K-2SO notes the force field and tells them to deliver the plans by getting the physical media themselves.
It's in a structure that's designed to be accessed by mechanical arms, then climbing all the way to the top of the tower to transmit the data. Stormtroopers then overpower him, and K-2SO dies, permanently locking the door to the control room with Jyn and Cassian inside, where Directory Krennic has spotted them. Outside in the battle, the rebels are able to take down several AT-AT's, and Bodhi manages to find a way to the control switch to turn on communications.
He is unable to turn the switch on during the battle, so Chirrut takes a risk and walks over to the switch and turns it on. He is, however, shot on the way back and dies in Baze's hands, telling him that he will always be one with the force. In the data storage area, Jyn and Cassian do some dangerous jumping and climbing to grab the cassette holding the Stardust file, but they're intercepted by Director Krennic. Although they take out the stormtroopers and shoot Krennic, the wounded Krennic shoots Cassian (who falls), while Jyn narrowly escapes.
While this is happening, Bodhi gets communications working but is killed by a grenade bomb thrown by a stormtrooper. Baze is inspired by Chirrut's sacrifice and fights until he is also killed by a grenade bomb held in the hands of a fallen stormtrooper. Jyn finally makes her way to the top of the tower and sees the command console for transmitting data to the rebels. The console prompts her to recalibrate the antenna, and she does, not knowing that Krennic is headed up. The tower is hit by shockwaves from the battle, and Jyn nearly falls off.
Jyn tries to send the data but is intercepted by Krennic. He claims that she will die and her rebellion will die with her, but a surprisingly alive (though heavily injured) Cassian appears and shoots Krennic, who falls. The rebel fleet destroys the force field gate, which is the last piece of the puzzle. Everything is now in place to allow the transmission of the plans to the Rebel fleet.
Jyn starts the transmission. While this is happening, Grand Moff Tarkin watches the carnage from the Death Star with Vader and aims the Death Star at the base on Scarif. While Scarif is about to be destroyed, the Rebel fleet retreats to note the sacrifice of the Rogue One. Jyn and Cassian, having transmitted the plans, hold hands and embrace on a beach as the Death Star obliterates them and the entire planet.
Darth Vader boards a Rebel ship and mows down scores of Rebel fighters with his lightsaber as he chases the memory card containing the Death Star plans through the Rebel flagship, arriving at the final hatch just in time to see Princess Leia's ship undock and escape. He reboards the star destroyer to pursue.
Inside Leia's ship, C-3PO asks a partly CGI Leia (Ingvild Deila, voice: Carrie Fisher) what the plans mean and she answers, "Hope," signaling the start of the first Star Wars film . . . Star Wars: A New Hope.