Domenico, (Marcello Mastroianni) first meets 17-year-old prostitute Filumena (Sophia Loren) in a Neapolitan brothel during WWII. After the war they become lovers, on and off for 22 years. Domenico eventually rents an apartment for Filumena and even lets her run his shop but is always chasing other women. Finally, on her deathbed, Filumena asks Domenico to marry her (just before he had planned to marry his young cashier), and then admits she had his legitimate child. Dominico then uses different subterfuges in trying to discover which teenager might be his son.