Rangers are through to their second cup final of the season after beating Celtic 5-4 on penalties following a 2-2 draw after extra time.
So how did the individual players on each side fare?
Former Rangers and Scotland midfielder Stuart McCall assesses the performances of the Ibrox side, while former Celtic and Republic of Ireland goalkeeper Pat Bonner rates Ronny Deila's players.
RANGERS RATINGS (by Stuart McCall):
Wes Foderingham (goalkeeper) 7
Did OK and kept passing the ball short out of defence, which was the basis of Rangers' approach. Made a really important save from Tom Rogic soon after Celtic had clawed it back to 2-2. That was a huge moment and then he saved from Scott Brown in the shootout.
James Tavernier (defender) 7
Everybody questioned him defensively beforehand, but he answered them all. Only once did he revert to fouling Patrick Roberts and he didn't give Gary Mackay-Steven a sniff when faced with him. Also kept attacking throughout, although it was a tired penalty kick he missed in the shootout.
Rob Kiernan (defender) 7
Showed great composure at times during the game, bringing the ball down and playing it out of dangerous areas with passing triangles. Didn't play with any fear before his injury and was solid defensively.
Danny Wilson (defender) 8
Has improved in recent months and that showed in this game. He took charge at the back and showed maturity and composure throughout. Handled the difficult challenge of facing Griffiths well.
Lee Wallace (defender) 8
His energy levels were remarkable. In the first half, he and Barrie McKay were excellent as a pairing. Wallace had to defend well against Roberts, but kept to his strengths and was always bombing forward. Even in extra time he was running beyond McKay to make things happen, and was strong defensively. A consummate pro and played a captain's role.
Andy Halliday (midfielder) 7
Scott Brown dominated the midfield in last season's Old Firm game, but Halliday stood up to him, got tackles in and got the fans going. He also showed a good range of passing. Set the tone for Rangers early on with his energy and assertiveness and took responsibility by scoring Rangers' opening penalty in the shootout.
Dominic Ball (midfielder) 7
Played in the holding role and was booked in the second half so will miss the final. Stefan Johansen created a couple of openings early on, but Ball was solid and kept the play moving. Looked comfortable when he switched to centre-back after Kiernan was injured.
Jason Holt (midfielder) 7
Nice and bright in possession throughout, and was always looking to link up with the forwards in the final third. Also didn't neglect his defensive duties. His performance was like his season: consistent.
Dean Shiels (forward) 7
Was asked to play in a position that is not his strongest, wide on the right. Tracked back and performed diligently, while contributing to Rangers' good possession in the first half.
Kenny Miller (forward) 7
Early on, his intelligent run beyond Charlie Mulgrew delivered a chance and Craig Gordon had to save well. That's typical Miller, he sniffs out a chance and is always on the move. Took his goal well, tucking it away as he has done all his career. Typically sharp and hard working.
Barrie McKay (forward) 9
Even prior to the goal, he was Rangers' best player. Early on, he and Wallace combined well down the left, as Rangers took the game to Celtic. Has quick feet and glides past players. Gave Mikael Lustig a hard game. Always looked after the ball and scored an outstanding goal.
Nicky Law (midfielder) 6
It's always difficult to come into a game like this as a substitute. He was also asked to play in an unfamiliar position wide on the right. Will be disappointed to have let Kieran Tierney in to cross for Celtic's equaliser but he atoned in the shootout, with a cool penalty.
Gedion Zelalam (midfielder) 6
Filled in when Ball had to move into defence and tried to keep play moving. Showed composure in the shootout to score a pressure penalty.
Nicky Clark (forward) 6
Worked hard and showed good energy when he replaced Miller. Stepped up during the shootout but saw his effort saved
CELTIC RATINGS (by Pat Bonner):
Craig Gordon (goalkeeper) 7
Did everything he was asked to do during the game. He didn't have any chance with either of the Rangers goals, but gave Celtic hope in the shootout when he saved Clark's penalty.
Mikael Lustig (defender) 6
The Sweden international had a hard time against Barrie McKay, particularly in the first half. He also didn't link up well with Patrick Roberts in front of him, and McKay and Wallace were able to get in a few times.
Dedryck Boyata (defender) 5
Only played for 23 minutes before leaving the field with an injury. Still made a couple of mistakes in that time, being caught in possession and having to commit a foul to halt a Rangers attack.
Charlie Mulgrew (defender) 6
He was steady throughout the game at centre-back, and showed his experience. Didn't do anything wrong, and was fine in possession. Stepped up to take a penalty in the shootout.
Kieran Tierney (defender) 8
Clearly Celtic's best player. At times he was up against two Rangers players, but still able to handle both of them very well. Worked up and down the pitch, showed good defensive instincts and still had the legs and the wherewithal to create the equaliser late on in extra time with a great cross for Tom Rogic.
Scott Brown (midfielder) 7
Another steady performer for Celtic. At the start of the second half, when Celtic needed to up the tempo, he pushed further forward and helped to haul his side back into the game. He did what was asked of him.
Nir Bitton (midfielder) 6
In extra time he was signalling that he had a hamstring injury and needed to come off. But he stayed on the pitch, kept playing on and then stepped up to take a spot-kick. For all his ability, though, he was still too quiet at times.
Gary Mackay-Steven (forward) 5
Couldn't really get into the game. Celtic did not use him that much, but in that case he then has to go looking for the ball, and demand to receive it. The game passed him by.
Stefan Johansen (midfielder) 5
Didn't deliver enough on the day. With his talent, he should have been more influential, but that's been the story of this season for the Norwegian international.
Patrick Roberts (forward) 6
Should have equalised in the first half when faced with an open goal and had another scoring opportunity in the second half on his right foot, so missed big chances. Great delivery for the corner kick that Erik Sviatchenko scored from, but he tired late on.
Leigh Griffiths (forward) 6
Not one of his better games, looked jaded and could have worked the Rangers centre-backs more. He didn't get the right supply, but still managed to hit the post and then the bar late on with a magnificent free-kick which could have won the game.
Erik Sviatchenko (defender) 7
Scored a powerful header and had two more on target. Did OK defensively and shored Celtic up; his partnership alongside Mulgrew looked stronger.
Callum McGregor (midfielder) 6
Was busy when he came on, without influencing the outcome of the game. Also missed one of the spot kicks.
Tom Rogic (midfielder) 7
Scored a great goal and made things happen when he came on. Had more of an impact than the other substitutes, but missed the critical spot-kick and that will haunt him.