Almoez Ali had given the Qataris the lead with a spectacular strike in the 17th minute but Azmoun scored twice – in the 42nd and 48th minutes – before laying on a third for Mohammad Mohebbi in the 65th minute to ensure the Iranians took all three points.
Mohebbi added the fourth eight minutes into stoppage time with a deflected header.
The win moves Amir Ghalenoei’s side onto 10 points and keeps it level with Uzbekistan, who notched up a 1-0 win over the United Arab Emirates earlier in the evening.
Qatar, meanwhile, remains stuck on four points from their opening four games.