A taxi driver was killed when his car was swept away after a river burst its banks in the Serravalle area of Alessandria.
A passenger escaped the vehicle and survived by clinging to a nearby tree, according to local media.
Italian news agency ANSA reported that another driver, an 81-year-old pensioner, died in a car accident caused by torrential rain in Strambino, near Turin.
The extreme weather has caused major damage and traffic disruptions.
Schools were ordered closed in Liguria and Piedmont on Tuesday, and the Piedmont region has requested a state of emergency be declared in the province of Alessandria, where over 100 people were evacuated.
Firefighters carried out 900 operations across the north, as flash floods inundated roads and railways.
Around 253 millimetres of rain fell in some parts of the northern Italy over 12 hours, local authorities said.
The Po river rose by over 3.5 metres over a 24-hour period, according to Italian agricultural association Coldiretti.
Lake Maggiore was also nearing a historic level.
Parts of Piedmont will remain on yellow (medium) alert on Wednesday as more bad weather is expected.