1차 세계대전 참전용사였던 ‘톰’(마이클 패스벤더)은 전쟁의 상처로 사람들을 피해 외딴 섬의 등대지기로 자원한다. 그 곳에서 만난 ‘이자벨’(알리시아 비칸데르)에게 마음을 열고 오직 둘만의 섬에서 행복한 생활을 시작한다. 하지만 사랑으로 얻게 된 생명을 2번이나 잃게 되고 상심에 빠진다. 슬픔으로 가득했던 어느 날, 파도에 떠내려온 보트 안에서 남자의 시신과 울고 있는 아기를 발견하고 이를 운명으로 받아들이며 완벽한 가정을 이룬다. 그러나 수년 후 친엄마 ‘한나’(레이첼 와이즈)의 존재를 알게 되고, 가혹한 운명에 놓인 세 사람 앞에는 뜻하지 않는 선택이 기다리고 있는데...