In the year 2077, Jack Harper, is a drone technician, living in a Tower 49, high above the clouds, with his assigned partner, Victoria/Vica (Andrea Riseborough). They are the last people left on Earth after it was destroyed by aliens known as the 'Scavs', who wanted Earth's resources. The Scavs destroyed Earth's moon, which caused a series of natural disasters and global devastation, then they invaded.
This led to a war in which the humans were forced to use nuclear weapons. In the end, the humans won the war, but had lost the Earth. The entire remaining human population moved to Titan, one of the moons of Saturn, with a select number inhabiting a large spaceship in orbit around the Earth called the Tet. Giant machines are drawing up seawater to process as energy for the humans' new home.
Jack's job is to journey to the surface during the day to repair the drones. These are spherical, flying robots designed to detect and terminate remaining Scavs on Earth. Vica's job is to stay inside the Tower to keep an eye on him, as his co-ordinator and to correspond with and get their mission objectives from Sally (Melissa Leo), the mission commander on the Tet.
Jack repairs the drones in the gridded area in what looks like the remains of New York/Manhattan. He repairs a No. 166 drone one day in the Superbowl Stadium, and reminds Vica that he would've loved to have watched the last game in 2017. He encounters a dog, and is able to send it away before Drone 166 fully recovers and kills it.
He then goes on to find another lost drone, inside the New York Public Library, but it is revealed to be a fake, and is actually a trap set up by the Scavs. Luckily, the drone from earlier, 166, saves Jack from the encounter. The drones have incredible fire-power and maneuverability. Jack finds a book, and decides to take it home. He remembers a verse inside it about Horatius.
Jack returns to the Tower for the night again and has dinner with Vica. She is excited that they are only two weeks away from completing their posting and will soon be on their way to join the rest of humanity on Titan. Jack, however, is unsure, as he doesn't want to leave yet.
He has been getting flashbacks and dreams of a time before 'the war' though he knows these can't be real as he was given an obligatory memory wipe before starting his mission as 'the mop-up crew'. Jack gifts Vica some flowers he has been tending to, but she discards them by dropping them from the Tower as it goes against regulations and they could contain "thousands of toxins".
They later go for a swim, and during a kiss, Jack has another flashback of a woman. In the morning the two awake to a mushroom cloud explosion in the distance, one of the water processing machines has exploded. The next day, Jack goes back to work and is instructed to investigate a signal being beaconed from the Empire State building. They discover that the signal is coded co-ordinates so, believing it to be the work of the Scavs, he cuts the wire.
He then tells Vica that he'll perform a perimeter check around the border where the 'radiation zone' meets the safe area, but really he is visiting his secret house by a lake, in a lush green valley hidden away from view. He falls asleep on the grass and awakes to see objects being parachuted down from the sky. They crash land right on the co-ordinates from the transmission.
He flies to investigate and finds that they are humans in delta-sleep pods. Drones arrive, and Jack witnesses the extermination of the people in the delta-sleep pods. He is able to save one last pod before the drone destroys it and he discovers that it is the woman from his flashbacks. He takes her back up to the Tower, where Vica manages to wake her from the deep sleep.
We find out her name is Julia (Olga Kurylenko) and Vica is not happy at having her stay with them. At sunrise Julia encourages Jack to go with her to collect the black box from her crashed spaceship; she needs to know what happened. He takes her, without Vica knowing.
After they retrieve it, Jack realizes they are surrounded by Scavs and he sends the aircraft back on autopilot before he is knocked unconscious by a Scav and is transported to their lair. Jack awakens to find himself captured and tied to a chair, and the Scavs reveal themselves to be human, not the alien species that had invaded the Earth.
The real aliens are the ones inside the Tet, and the drones are actually programmed to kill any remaining humans except for Jack, as the technician. The leader of the Scav/Human resistance, Beech (Morgan Freeman) asks Jack for his help. They have a Drone they have successfully stolen along with ten weapons-grade plutonium cores from other drones they have destroyed.
This has effectively turned this particular drone into a nuclear bomb that they hope to reprogramme to kill the real alien species aboard the Tet. As a skilled Drone engineer they hope to make Jack reprogramme the drone. He refuses as he still believes there to be humans on board the Tet. Beech releases them and tells Jack that he will find answers in the forbidden 'radiation zone' and see if it would change his mind.
The two ride Jack's motorbike until it runs out of fuel, then hike to the Empire State building, where Jack manages to send a message for Vica to let her know he's fine. Vica sends the aircraft to pick them up. On the balcony viewing area, Julia reminds Jack of who she really is. They were both from the spacecraft Odyssey, and she is his real wife, before he had his memory erased.
He remembers, and they share an embrace just as the aircraft arrives and Vica sees the two of them. Jack and Julia go back to the Tower, where an upset and jealous Vica sends a message to Sally claiming that she and Jack are no longer an "effective team". This leads a drone to awaken from the lower floor of the Tower and vapourizes her, but before it kills Jack too, Julia shoots it with the aircraft gun.
They fly away and are soon being chased by three other Drones. In an attempt to destroy them, they fly into a lightning storm, and into a canyon. Jack manages to destroy two but the third, #166, rams them and they crash into a sandy desert in the radiation zone. Jack realises that he is not boiling alive as he was led to believe would happen if he ventured into the radiation zone.
He also hears the familiar distress beep of a broken drone just over the next sand dune. Upon investigating, Jack witnesses another technician in an identical aircraft land to fix the drone, despite him being told there were no others. Jack confronts the technician only to find it is a clone of himself known as Jack Harper 52. They get into a fight and in the brawl, Julia is shot in the abdomen.
Jack uses 52's plane to go to 52's Tower to collect a med-kit for Julia, and there he sees a clone of Vica. He is stunned by the elaborate unravelling of everything he knew to be true but manages to trick Vica 52 into believing he is her Jack. After saving Julia, they take refuge in the lake-house, and re-connect. Jack decides to help the human resistance and returns to help them to reprogramme the Drone.
However, during this time, Sally has sent another three drones after Jack by tracing his DNA traces. The drones arrive and attack all of the humans, leaving few survivors. Beech is also mortally wounded, and the reprogrammed drone is no longer functional.
The fuel cells remain intact though, and they decide the only way that they can still transport the fuel-cell bomb into the Tet is by hiding them in a delta-sleep pod with Julia and taking her to the Tet on the pretence of surrendering. Jack flies to the Tet, with the delta-sleep pod in the back.
On the way, he listens to the black box that they had recovered from the Odyssey, and Jack listens to himself as the pilot of the Odyssey as it approaches the Tet as first contact in 2017, the day after the Superbowl. Vica is the co-pilot and Julia is one of the members of the crew. They were told to check out the Tet by the real Sally, a NASA cap com.
The Odyssey began to accelerate uncontrollably towards the Tet and in order to save the crew and Julia, Jack released the back shuttle, leaving only him and Vica heading towards the Tet. Jack 49, now at the Tet, is allowed entry and sees millions of clones of himself and Vica growing in pods. Sally is also only a large floating triangular stone with a red laser eye in the centre, the alien technology.
"Sally" has lied to him and was in fact the real reason why the Earth was a dry wasteland. He opens the delta-sleep box and inside is not Julia, but the wounded Beech. Together, they detonate the fuel cells and the Tet is destroyed. Meanwhile, Julia wakes up by the lake house, and sees the Tet being blown up in the sky, she weeps.
Three years later, Julia has given birth to Jack's daughter, and is living a peaceful life in the lake-house. They then see members of the human resistance; they had been searching for her all this time. A figure then walks out of the crowd, and it is Jack 52, who had spent all the time looking for Julia, as he has the same memories as Jack 49.