At least 29 people, including children, have been killed in a terrorist attack on a military parade in south-west Iran, responsibility for which has been claimed by both Islamic State and a separatist group.

Four assailants disguised as military personnel opened fire from behind the viewing platform during the parade in Ahvaz to mark the anniversary of the eight-year war with Iraq in the 1980s.

Members of Iran’s elite Revolutionary Guards and soldiers from the country’s army, as well as civilians, including children, were among the victims, news agencies reported.

Members of a military band lie on the ground after the attack. Photograph: Morteza Jaberian/AFP/Getty Images

The attack took place in the capital of the oil-rich Khuzistan province which is home to the country’s Arab minority. It has been the scene of recurring protests over environmental challenges and economic grievances in recent months.

Iran’s state news agency, Irna, quoted an unnamed “informed source” as saying that at least 24 people had been killed, and another 53 taken to hospital, some in a critical condition. Three of the assailants were killed on the scene while one died later in hospital, the agencies reported.

Photographs taken in the aftermath of the attack showed soldiers carrying wounded children away from the scene.

One image taken by the semi-official Isna news agency showed a soldier holding an injured young boy who later died. Irna identified him as Mohammad-Taha Eghdami.

His father, Sa’dollah Eghdami, told Irna: “My four-year-old Taha had come to watch the pageant, he was supposed to go to nursery tomorrow but they martyred him in front of my own eyes in the most brutal way.” He said his wife was being treated in hospital for injuries.

Other soldiers were seen shielding children on the ground from potential further attacks. A veteran from the 1980s Iran-Iraq war was killed in his wheelchair, and a journalist was also among the dead.

Soldiers react to the assault. Photograph: Morteza Jaberian/EPA

An Arab nationalist separatist group, called the Patriotic Arab Democratic Movement in Ahwaz, claimed responsibility for the attack. The spokesperson Yagoub Hor Altasteri told the London-based Iran International TV network that the attack was aimed at “the Revolutionary Guards and the armed forces of the Islamic Republic”.

In November last year, the 52-year-old Iranian Arab secessionist Ahmad Mola Nissi, was killed in The Hague. It was suspected of being a political killing but officials have not blamed the Iranian state to date.

Iran’s ambassador to the UK, Hamid Baeidinejad, called on the British media regulator Ofcom to investigate Iran International – which is run by a company owned by a Saudi national – for airing the interview.

“Iran International has shamefully broadcast an interview with the spokesperson of the terrorist group behind today’s terrorist attack in Ahwaz. We condemn this heinous act and will pursue formally with Ofcom to investigate it as an act in supporting terrorism and violence,” he tweeted.

Iran International said its decision was in line with its professional duty to inform audiences, and its interviewer had challenged the spokesperson. Many in Iran, however, said it was like giving airtime to an Islamic State official after a terrorist attack in the west.

Members of the Revolutionary Guards take part in the parade before the assailants opened fire. Photograph: AFP/Getty Images

Isis also claimed responsibility for the attack on the parade, at which it wrongly suggested the Iranian president was speaking. Hassan Rouhani was speaking at a parade in the capital, Tehran, instead.

Meanwhile, the foreign minister, Mohammad Javad Zarif, pointed the finger at Iran’s regional rivals, which Tehran has accused for many years of helping separatist groups.

“Terrorists recruited, trained, armed and paid by a foreign regime have attacked Ahvaz,” he tweeted, in an apparent reference to Saudi Arabia. “Children and journos among casualties. Iran holds regional terror sponsors and their US masters accountable for such attacks.”

The Revolutionary Guards said the attackers were affiliated to a terrorist group backed by Saudi Arabia. “The individuals who fired at the people and the armed forces during the parade are connected to the al-Ahvaziya group which is fed by Saudi Arabia,” the spokesman Ramezan Sharif said.

Abolfazl Shekarchi, a spokesman for the Iranian military, said the attack was not the responsibility of Isis, but of terrorists who he claimed were trained and organised by “two Gulf countries linked to the US and [Israel’s] Mossad agency”.

The British ambassador to Iran, Rob Macaire, tweeted: “Wherever it happens terrorism must be condemned. All our condolences to the families of the victims.”

Iran has not been immune to the kind of terrorist attacks seen in Europe in recent years, but attacks of such scale are rare. In June 2017, Isis terrorists carried out two simultaneous attacks in Tehran against the Iranian parliament building and the mausoleum of Ayatollah Khomeini, killing 17 civilians and wounding 43.