À Chicago, Theresa Osborne, documentaliste dans un grand quotidien, le Chicago Tribune, supporte mal son récent divorce et doit élever seule Jason, son fils. Elle décide alors de faire une croix sur sa vie sentimentale. Mais un jour, alors qu'elle fait son jogging sur une plage du cap Cod, elle découvre une bouteille échouée contenant une déclaration d'amour poignante et passionnée. Bouleversée par la poésie de ces quelques lignes, Theresa cherche dès lors à en retrouver l'auteur. Son enquête met à contribution ses collègues de la rédaction qui publient la lettre à son insu et reçoivent deux autres lettres. Grâce à la machine à écrire et le papier utilisé, l'auteur est identifié : il s'agit de Garret Blake, constructeur de bateaux dans les Outer Banks au bord de l’Atlantique. Veuf éperdu, il est brisé depuis la mort il y a deux ans de son épouse Catherine, peintre. Il vit en reclus, s'est querellé avec sa belle-famille et avec Johnny, son beau-frère. Seul Dodge, son père, un ancien alcoolique, parvient encore à le secouer un peu. Lorsque Theresa rencontre Garret, les deux revivent une histoire d'amour qu'ils croyaient impossible mais la jeune femme n'ose lui avouer le but initial de sa visite, par crainte de le perdre. Alors que Garret découvre l'univers de Theresa à Chicago, il découvre les lettres chez elle. Furieux, il la quitte. De retour chez lui, il fait la paix avec sa belle-famille, lui donne toutes les peintures de Catherine, et achève son voilier avec l'aide de Johnny. Il fait également la paix avec Theresa qu'il invite pour le lancement de son bateau, mais cette dernière réalise à cette occasion qu'il est toujours amoureux de Catherine, nom qu'il a donné au voilier. Elle repart en lui disant de la rappeler quand il pensera être prêt à commencer une nouvelle vie avec elle. Garret écrit une nouvelle lettre dans laquelle il fait ses adieux à son épouse défunte, lui annonçant qu'il va vivre complètement son histoire d'amour avec Theresa, aussi forte que celle qu'il a connue avec Catherine. Le jour même, il prend son bateau pour jeter une bouteille à la mer contenant la lettre mais, alors qu'il affronte une tempête, il meurt noyé en portant secours à des plaisanciers en détresse[4].