The constitutional court found fault with two points, namely a closed system which prevents voters from choosing individual candidates, and a bonus awarded to the frontrunning coalition to ensure it has a majority number of seats.
The law dates back to 2005 and has been maligned even by its conceptor - who described it as a "porcheria" (a mess), after which it was dubbed by politicians and media alike as the "Porcellum".
The court said parliament - elected under the Porcellum - could "still approve a new electoral law", something Italy's parties have been promising to do for years. Italy has held two elections since the law came in.
"The ruling is a ray of sunlight in the chill of Italian democracy," Nichi Vendola, head of the Left, Ecology and Freedom (SEL) party said.
Wednesday's ruling increases the pressure on Prime Minister Enrico Letta's coalition government to follow through with a pledge to revise the law.
Members of Italy's centre-right, hopeful of their chances of victory over the left should fresh elections be called soon, said parliament should be dissolved.
Daniela Santanche, a fierce supporter of former premier Silvio Berlusconi, said Italy's President Giorgio Napolitano should "dissolve parliament and call a vote immediately: give Italians back their voice."
Beppe Grillo, founder of the populist Five Star Movement (M5S), Italy's biggest single party, said "only a new parliament can change the electoral law".
The court's ruling means "parliament, the government and Napolitano are illegitimate representatives of the Italian people. They no longer hold any authority," he said.