“At least 25 people were killed and around 70 wounded when a bomb blew up in a truck parked in the central market” at around 10:15 am (0715 GMT), a police colonel said on condition of anonymity.
A hospital source in the city, 160 kilometres (100 miles) south of Baghdad, confirmed receiving 25 dead.
Shortly afterwards authorities imposed a curfew across the city of some 440,000 people.
The blast came just hours after near-simultaneous car bombs targeting Shiite pilgrims on the outskirts of the central shrine city of Karbala killed four people.
The 7:00 am (0400 GMT) attack struck the village of Freyha, 10 kilometres (six miles) east of Karbala, ahead of commemoration ceremonies on Friday for the birth of a key figure in Shiite Islam.
“There were four killed and 13 wounded by two car bombs at around 7:00 am, east of Karbala,” provincial police spokesman Lieutenant Colonel Ahmed al-Hasnawi said.
A medical official in Karbala, speaking on condition of anonymity, put the toll at four dead and 33 wounded.
Karbala is frequented by Shiite pilgrims as it is the site of shrines to Imam Hussein and his half-brother Abbas, both central figures to Shiite Islam.
Friday’s ceremonies are to mark the birth of another figure, known as the 12th imam.
The violence comes amid a spike in attacks in Iraq, with the country suffering a wave of unrest in June that left at least 282 people dead according to an AFP tally, although government figures said 131 Iraqis died.
While violence in Iraq has declined dramatically since its peak in 2006-2007, attacks remain common across the country.