David (Colin Farrell) on juuri jäänyt vaimonsa jättämäksi. Hänen on löydettävä uusi tosirakkaus 45 päivässä tai muutoin hänet muutetaan valitsemakseen eläimeksi ja vapautetaan metsään. David asuu etsikkoajan salaperäisessä hotellissa muiden sinkkujen kanssa. Useiden epäonnisten romanssiyritysten jälkeen David päättää paeta ja päätyy rakkauden kieltäneen kapinajoukon riveihin. Siellä hän tapaa arvoituksellisen naisen (Rachel Weisz), joka yllättäen herättää hänessä vahvoja tunteita…