Tom (Joseph Gordon-Levitt) er en ung og håbløs romantiker, der bliver knust, da hans kæreste Sommer (Zooey Deschanel) slår op med ham. For at forstå hvad der gik galt, tænker han tilbage på forskellige perioder af hende under de 500 dage, men konklusionen er slet ikke som han havde forestillet sig.