The Atlas Lions have been dominant in previous finals, hammering Nigeria 4-0 in 2018 and defeating Mali 2-0 in 2020
Morocco are one step away from making CHAN history after edging defending champions Senegal 5-3 on penalties in a tense semi-final on Tuesday night at the Mandela National Stadium in Kampala.
The match ended 1-1 after extra time, with Libasse Gueye giving Senegal the lead in the 16th minute before Saïd Bougrine equalised for Morocco seven minutes later.
Keep up with the latest headlines on WhatsApp | LinkedIn
Both sides created chances but neither could find a winner in regulation or extra time, forcing a dramatic penalty shootout.
In the shootout, Morocco kept their composure as Hrimat, Lamliloui, Khairi, Bach, and Mehri all converted their spot-kicks.
For Senegal, Seyni Ndiaye missed their first penalty, leaving Cisse, Ciss, and Ba to score, but Morocco's perfect record from the spot sealed a 5-3 victory.
The result puts Morocco within touching distance of a record third CHAN title after their triumphs in 2018 and 2020.
The Atlas Lions have been dominant in previous finals, hammering Nigeria 4-0 in 2018 and defeating Mali 2-0 in 2020.
Standing in their way are Madagascar, who reached their first-ever CHAN final after a dramatic 1-0 extra-time win over Sudan earlier on Tuesday at the Benjamin Mkapa Stadium in Dar es Salaam.
Substitute Toky Rakotondraibe scored the decisive goal in the 116th minute, sending the Malagasy fans into wild celebrations and making history for the island nation.
It was a heartbreaking exit for Sudan, who missed several chances to reach their maiden CHAN final. Goalkeeper Mohamed Abooja had been outstanding throughout the tournament but could do nothing to stop Madagascar's late winner.
For Morocco, the chance to become the most successful team in CHAN history now lies in Saturday's final at the Moi Sports Centre Kasarani in Nairobi.