A screamer from winger Ahmed Zizo gave Zamalek a third-minute lead at the Mohamed V Stadium but they were then pegged back as Wydad poured forward en masse to turn the match on its head.
Zouhair El Moutaraji brought Wydad level and defender Amine Farhane took full advantage of a mistake from Egypt keeper Mohamed Abou-Gabal to score with an acrobatic effort and give his side a 2-1 lead at halftime.
Zamalek had more possession in the second half but they rarely threatened and were caught on the break two minutes from time as Yahya Jabrane finished off a flowing move to send the passionate home fans into raptures.
The defeat left Zamalek third in Group D with only two points from three games, four behind Wydad and five adrift of leaders Petro Atletico of Angola.
To stand a realistic chance of making it to the last eight and avoid a second successive group-stage elimination, Zamalek will need to beat Wydad in Cairo next month.
Zamalek stunned the vociferous home crowd after three minutes when Zizo collected a pass from Achraf Bencharki, an ex-Wydad winger, and let fly with a powerful right-foot shot that nestled into the top corner of the net.
The visitors then sat back to protect their lead, allowing Wydad to mount a relentless onslaught.
After some half-chances, Wydad equalised in the 27th minute when a deflected shot ran loose to the unmarked El Moutaraji to volley home from inside the area after a poor clearance from central defender Mahmoud Alaa.
Ten minutes later, Abou-Gabal gifted Wydad a second goal when he fumbled at an innocuous corner and Farhane found an empty net with a superb overhead kick.
Reda Jaadi could have added a third on the stroke of halftime in stunning fashion, with his long-range piledriver forcing a fine save from Abou-Gabal.
El Moutaraji went close again with another shot early in the second half before Zamalek took control, although they remained toothless as Wydad easily dealt with their feeble attempts.
The hosts ensured the win when they broke on a counter attack in a move initiated by substitute Juvhel Tsoumou down the right.
Muaid Ellafi was then fed to pull the ball back from the byline, with the unmarked Jabrane making no mistake with a simple finish.
(For more sports news and updates, follow Ahram Online Sports on Twitter at @AO_Sports and on Facebook at AhramOnlineSports.)