The Indian - whose name was given as Kulbir Singh - told police in Piacenza city in northern Italy that he strangled to death his 27-year-old wife - named as Balwinde Kaur - before throwing her corpse in the Po river, the AKI news agency reported.
Investigators said Kulbir, who worked for an agricultural company, killed his wife to punish her for dressing like a Westerner against Indian traditions. Balwinde's body was found floating on Sunday in the Po river near Piacenza, 153 days after she went missing.
The mother of a five-year-old boy, Balwinde was three months pregnant, according to the PiacenzaSera news website.
Another Italian news agency AGI said the accused killed his "excessively westernized" young Indian wife because he feared he would lose her.
The woman's father reported her disappearance May 1.
Her husband told the military police that he was sure she had left home because she wanted to leave him.
He confessed when his wife's body was found on the river bank near S.Nazzaro di Monticelli D'Ongina. The body was spotted by two girls walking in the area.
The AGI report said Balwinde lived for about 10 years with her husband in Baselico Duce village, on a farm where the man looked after the cattle.
She was a housewife and occasionally did domestic jobs and was known and liked by other mothers with children attending the local kindergarten. The other women had organised a search party when she disappeared.
Her husband too led a normal, quiet life and was seen taking their little boy to school.
The woman's family has lived in Tuscany for around 20 years.
Get Breaking news, live coverage, and Latest News from India and around the world on NDTV.com. Catch all the Live TV action on NDTV 24x7 and NDTV India. Like us on Facebook or follow us on Twitter and Instagram for latest news and live news updates.