Gabriel Okechukwu scored the only goal of the game as Nigeria beat Sudan 1-0 in Marrakech on Wednesday to set up an African Nations Championship final showdown with Morocco.
This was a tempestuous affair, with the Eagles suffering an early setback when captain and Man of the Match in the quarter final - Ikechukwu Ezenwa - was replaced by Dele Ajiboye in the 12th minute after picking up an injury.
Ifeanyi Ifeanyi was sent off in the 58th minute for a second yellow, while Sudan were also reduced to 10 men before the end of the clash when Bachir Makki Bakri was dismissed three minutes from time.
Nigeria had required extra time to beat Angola in their quarter final in Tanger, but showed little sign of any fatigue as they took a 22nd-minute lead through Okechukwu.
The Akwa United man had been one of the heroes of that quarter-final triumph after coming on to net the extra-time winner, and his class in front of goal was evident here as he raced onto a pass from strike partner Anthony Okpotu and fired past Akram.
The Super Eagles had substitute Ajiboye to thank for remaining ahead, with the goalkeeper making a series of fine stops to keep the Sudanese frontmen at bay. Notably, he made a particularly acrobatic stop in the 84th minute, and then produced a double save in added time to ensure Nigeria advanced.
Progression ensures that Nigeria are on for their best CHAN finish, having previously finished third under Stephen Keshi in 2014.
The win sets up a final showdown with Morocco in Casablanca on Sunday after the hosts beat Libya 3-1 after extra time earlier on Wednesday to advance, while Sudan and Libya meet in the third-placed playoff in Marrakech on Saturday.