Sophie (Amanda Seyfried) é uma escritora estadunidense que, durante uma viagem para Verona com seu noivo (Victor, interpretado por Gael García Bernal), encontra, num ponto turístico da cidade, uma carta de amor escrita há 50 anos. Ela resolve respondê-la e assim conhece Claire (Vanessa Redgrave), a senhora que a escreveu quando era apenas uma adolescente e foi obrigada a se separar de seu primeiro amor. Sophie, então, resolve acompanhar Claire e seu neto Charlie (Christopher Egan) – este totalmente contrário à ideia – numa viagem por essa região da Itália em busca de uma segunda chance no amor com sua alma gêmea.
