As a young boy, Noah (Russell Crowe) witnesses his father, Lamech (Marton Csokas), killed by Tubal-Cain (Ray Winstone). Many years later, Noah is living with his wife Naameh (Jennifer Connelly) and their sons Shem (Douglas Booth), Ham (Logan Lerman), and Japheth (Leo McHugh Carroll), but after seeing a flower grow instantly from the ground and haunted by vivid dreams of a great flood, Noah takes them to visit his grandfather, Methuselah (Anthony Hopkins).
On the way, they come upon a group of people recently killed, and adopt the lone survivor, a girl named Ila (Emma Watson). Noah and his family are chased by Tubal-Cain's men, but seek refuge with the fallen angels known as the 'Watchers', confined on Earth as stone golems (nephilim) for helping humans banished from the Garden of Eden. Methuselah gives Noah a seed derived from Eden, from which an entire forest grows within seconds, whose trees Noah's family and the watchers cut to build Noah's Ark. As the Ark nears completion, animals of various species enter the ark and are put to sleep by incense.
With Ila having become enamored of Shem, Noah goes to a nearby settlement to find wives for Ham and Japheth, but upon witnessing cannibalism by a starving mob, he abandons his effort. Thereafter Methuselah cures Ila of sterility. Ham, searching for a wife on his own behalf, acquires the refugee Na'el (Madison Davenport), but when Tubal-Cain's followers attack the Ark, Noah forces Ham to save himself and leave Na'el to die. All of Noah's family enter the Ark except Methuselah, who remains behind purposely. As the deluge begins, the Watchers sacrifice themselves to protect the Ark from the mob, and themselves ascend to Heaven. As the flood drowns the remaining soldiers, Tubal-Cain climbs onto the Ark and solicits Ham, playing on anger toward Noah for allowing Na'el to die. Ila becomes pregnant as rains stop, but Noah, against his wife's dissuasions, resolves that if the child is a girl, he will kill her to satisfy the Creator's wish to destroy humanity.
Months pass, and Ila and Shem build a small raft to escape Noah's resolve, but Noah burns it after discovering it. Afterwards, Ila gives birth to twin girls. Meanwhile, Tubal-Cain convinces Ham to help kill Noah, who is therefore attacked by Tubal-Cain, Ham, and Shem. As they fight, the Ark hits a mountain, and Ham kills Tubal-Cain. Noah seizes Ila's twins, but spares them upon perceiving innocence. Upon exiting the ark, Noah goes into isolation in a nearby cave and starts to drink wine. Afterwards he is discovered by his sons, nude and drunk. Having reconciled, at the behest of Ila, with all but Ham (who departs alone), Noah blesses the family as the beginning of a new human race, and witness an immense rainbow.