Dopo 20 anni di lontananza, Odisseo (Fiennes) si ritrova sulle rive di Itaca, sparito e irriconoscibile. Il Re è finalmente tornato a casa, ma molto è cambiato nel suo regno da quando è partito per combattere la guerra di Troia. La sua amata moglie Penelope (Binoche) è ora prigioniera nella sua casa, perseguitata dai numerosi e ambigui pretendenti per scegliere un nuovo marito, un nuovo re. Il loro figlio Telemaco (Plummer), cresciuto senza padri, rischia di morire per mano dei pretendenti, che lo considerano un ostacolo nella loro ricerca senza quartiere di Penelope e del regno. Segnato dalla sua esperienza di guerra, non è più il guerriero leggero che la sua gente ricorda, ma è costretto ad affrontare la tristezza per ritrovare la forza necessaria a salvare la sua famiglia e a riconquistare l’amore che ha perso.