Mamelodi Sundowns are back in a TotalEnergies CAF Champions League final after seeing off Esperance Tunis at Loftus Versfeld.
Brayan León Muñiz, as he has done all tie, decided it — missing from the penalty spot before burying the rebound in the same 35th-minute phase to make it 1-0 on the night and 2-0 on aggregate.
A disciplined second-half shift saw Miguel Cardoso’s side close out the tie without ever losing control.
Here’s how every player rated.
Mamelodi Sundowns
Ronwen Williams — 7.5 A quiet evening by his standards, which is exactly how Cardoso wanted it. The Bafana captain organised, claimed crosses cleanly, and never looked troubled by Esperance’s speculative attempts from distance. Another clean sheet in a knockout tie where composure mattered more than saves.
Khuliso Mudau — 7 Aggressive on the overlap in the first half, disciplined in the second when the tie had to be managed. Picked his moments to step into midfield and generally kept the visitors’ left-side threat under wraps.
Cupido — 7 Assured alongside his centre-back partner on a night where Sundowns were rarely stretched. Read the game well, stepped out to break up counters, and didn’t panic when Esperance briefly raised the tempo after the hour.
Ndamane — 7 Thrown into a massive occasion with Grant Kekana suspended, and handled it. No spectacular moments but, on a night where Sundowns needed zero mistakes, that’s the performance they wanted from him.
Divine Lunga — 7 Steady rather than spectacular. Held his shape, defended his flank, and helped smother any crossing threat. The kind of disciplined shift a Champions League semi-final demands.
Thapelo Morena — 7 Energetic down the right for his 86 minutes on the pitch. Didn’t quite replicate his first-leg assist moment but kept Esperance’s left-back honest and tracked back diligently. Replaced late by Johannes as Cardoso ran down the clock.
Teboho Mokoena — 7 Picked up a yellow card early in the second half for a cynical foul, but that was almost the point — he set the tone that Sundowns would not let Esperance settle. Broke up play, recycled possession, and generally dictated the midfield tempo.
/https%3A%2F%2Fmedia.afrik-foot.com%2Fen-za%2F2026%2F03%2FTeboho-Mokoena-of-Mamelodi-Sundowns.jpg)
Jayden Adams — 7.5 Quietly one of Sundowns’ best again. Composed on the ball, alert off it, and continues to look like the midfielder Cardoso trusts most in big European-style knockouts. Taken off at 86 to a standing ovation.
Arthur Sales — 6 Booked just before half-time and hooked at 57′. Never really got into the game in the way his first-leg cameo suggested he might. Allende’s introduction changed the texture of the side, and the Brazilian was the obvious one to make way.
Tashreeq Matthews — 6.5 Hard-running and willing without being incisive. Had one half-chance that didn’t fall kindly and was replaced by Saleng on 78 minutes as the hosts shifted into game-management mode.
Brayan León Muñiz — 8.5 (Man of the Match) The story of the tie. Missed the penalty that should have put the tie to bed at 35′ — Ben Said guessed right — but pounced on the rebound seconds later to score anyway. Ice in the veins after a miss that would have haunted lesser strikers. His 10th goal of the season and his third in the knockout rounds. Sundowns have their Mayele.
/https%3A%2F%2Fmedia.afrik-foot.com%2Fen-za%2F2026%2F04%2FBrayan-Leon-Mamelodi-Sundowns.jpg)
Substitutes
Marcelo Allende (57′ for Sales) — 7 Changed the shape of the midfield with his first few touches. Calm in possession, intelligent in his pressing triggers, and helped Sundowns kill the last half hour.
Mahlatse Saleng (78′ for Matthews) — 6.5 On with the job essentially done. Used his pace to relieve pressure and win a couple of important throw-ins deep in Esperance territory.
Iqraam Rayners (78′ for León) — 6.5 A classic late-stage Cardoso substitution — big body, front-foot pressing, holding the ball up to burn seconds. Did exactly that.
Bathusi Aubaas (86′ for Adams) — N/A Cameo appearance to see out the final minutes.
Kegan Johannes (86′ for Morena) — N/A Cameo appearance to see out the final minutes.
Esperance Tunis
Bechir Ben Said — 7 The best player in a yellow shirt. Saved León’s 35th-minute penalty brilliantly but was powerless on the rebound. Also picked up a yellow card for a foul on 32 minutes. Without his penalty save, this could have been a heavier defeat.
/https%3A%2F%2Fmedia.afrik-foot.com%2Fen-za%2F2026%2F04%2Fimago1063504673.jpg)
Mohamed Ben Hamida — 6 Couldn’t replicate the energetic first-leg performance that made him such a nuisance in Radès. Isolated for long spells as Sundowns’ midfield press cut off his supply.
Onuche Ogbelu — 5.5 Booked in stoppage time for a frustrated foul, which summed up his evening. Esperance needed him to impose himself as he did in the first leg, and he couldn’t.
Kouceila Boualia — 5.5 Replaced on 59 minutes having struggled to get into the game. His removal signalled Beaumelle knew he needed a different profile if Esperance were to find a way back in.
Yan Sasse — 6 Some bright moments on the ball early on but faded as Sundowns tightened midfield. Hooked at 69′ for Diarra as the urgency level rose.
Houssem Teka — 5.5 Quiet on a night the Tunisians needed creativity. Substituted at 69′ alongside Sasse.
Florian Danho — 6 The first-leg tormentor was kept far quieter this time. Started brightly but found little space between Cupido and Ndamane. Subbed 83′.
Abdelkader Konaté — 5.5 Barely got into the final third. Replaced on 83′ as Beaumelle emptied his bench looking for a goal that never came.
Substitutes
Aboubacar Diakité (59′ for Boualia) — 6 The man whose disallowed “goal” defined the first leg arrived hoping to be the hero again. Instead, he was booked on 72 minutes for a touchline argument. Lively but undisciplined.
Hamza Rafia (69′ for Teka) — 6 Tried to inject some quality in the final third and was Esperance’s most progressive passer after his introduction. Arrived too late to change the story.
Jalel Diarra (69′ for Sasse) — 5.5 Couldn’t get on the ball enough to influence the game.
K. Maacha (83′ for Danho) — N/A Mohamed H. Ali (83′ for Konaté) — N/A Both introduced too late to register a meaningful contribution.
Sundowns now head to a second consecutive Champions League final, where they’ll face the winner of FAR Rabat vs RS Berkane — an all-Moroccan tie FAR lead 2-0 from the first leg.
A decade after Pitso Mosimane’s class of 2016, Cardoso’s Brazilians are 180 minutes from a second star above the badge.
/https%3A%2F%2Fmedia.afrik-foot.com%2Fen-za%2F2026%2F02%2FBrayan-Leon-Thapelo-Morena-Jayden-Adams-and-Nuno-Santos-of-Mamelodi-Sundowns.-Photo-Mamelodi-Sundowns.jpg)