Dwie młode Amerykanki - Vicky (Rebecca Hall) i Cristina (Scarlett Johansson) - przylatują do Barcelony na letnie wakacje. Vicky jest kobietą wrażliwą i wkrótce wyjdzie za mąż. Cristina natomiast szuka emocjonalnych i seksualnych przygód. Podczas wakacji w Barcelonie obie kobiety uwikłają się w romans z Juanem Antonio (Javier Bardem), ekscentrycznym malarzem, który wciąż związany jest ze swoją byłą żoną Marią Eleną (Penelope Cruz).