We leave you with some photos from the thrilling encounters.
While Portugal and Spain have scrapped through, both Iran and Morocco should be proud of the way they played in the World Cup. Kudos to Carlos Queiroz's men for the way they fought against the European champions in Saransk.
VAR has yet another field day in the World Cup!
Both the Group B matches saw a lot of decisions influenced by VAR. Morocco aren't going to be happy with the system, especially after Spain late equaliser was confirmed. Aspas' goal though seemed to be fine when he received the ball from the right to flick it in.
Meanwhile, VAR was used in Saransk as well to award Iran a late penalty. It was converted and Portugal slipped to the second spot of the Group B table.
Meanwhile, it was also used to check whether Portugal's main man deserved a penalty for bringing down Pouraliganji.
Full time: Spain and Portugal progress, heartbreak for Iran.
It ends 1-1 between Iran and Portugal after all the late drama in Saransk. After Ansarifard did what Ronaldo couldn't do earlier in the match — score from the spot. He did in the 93rd minute to give Iran an outside chance even as Spain were struggling in Kaliningrad.
Mehdi Taremi had a great chance in the 95th minute to give Iran a historic win but he shot into the side netting, bringing relief to Portugal supporters as Iago Aspas gave Spain the much-needed equaliser against Morocco.
Portugal breathe a sigh of relief at the full-time whistle as Iran player sink into the turf. After plenty of controversial decisions, what a finish to the match.
Spain top the group, thanks to their 2-2 draw in Kaliningrad. Portugal go through as the second-placed team.
The La Roja will take on Group A winners Uruguay in the last 16 round while Fernando Santos' men face hosts Russia.
90+2 min: VAR drama in Kaliningrad and Saransk
Six minutes of added time in Saransk. Iran have got the equaliser. Karim converts from the spot after VAR was used to check a handball.
Meanwhile, Spain have leveled in Kaliningrad. Substitute Iago Aspas is the goal-scorer. The off-side flag was initially raised as Aspas' shoulder was seemingly in an off-side position. VAR was used and the goal was confirmed.
Moroccans are now complaining to the referee but nothing has changed.
82 min: Morocco take the lead, more drama in Saransk
Substitute En-Nesyri gives Morocco the lead against Spain in Kaliningrad. A brilliant corner from Amrabat and David de Gea had no chance to change the outcome.
Morocco are out of contention but what a win this would be for them.
In Saransk, Cristiano Ronaldo was in danger of getting a red card. He seemed to have pushed Pouraliganji while trying to meet a through ball. The referee stops the game and takes a long look at the incident with the help of VAR.
The Portugal captain looked concerned but he escapes with a yellow. What drama this match has already seen.
75 min: Some drama in Saransk
Carlos Queiroz is being asked to calm down by the referee after he animatedly asked for a VAR intervention. Azmoun went down inside the box but there was nothing to warrant a penalty for Iran.
Meanwhile, Iran replace Ezatolahi with Ansarifard, their final change of the night.
74 min: Spain make a double change
Diego Costa and Thiago are going off for Spain. Asensio and Aspas are the replacements as Spain are looking to get one more and wrestle back the top spot from Portugal. Both the teams wouldn't want to face Uruguay, who haven't conceded yet in the tournament.
71 min: Adrian Silva hits one over the post
Adrian Silva, from outside the box, hits one over the post. Meanwhile, at the other end, Ghoddos fires one wide off the near-post. A good chance for the substitute but he has failed to make use of it.
Meanwhile, in Kaliningrad, Morocco replace goal-scorer Boutaib with En Nesyri.
69 min: Portugal, Iran make changes
Goal-scorer Quaresma, who got a yellow card as well, is being replaced by Fernando Santos. Bernardo Silva comes in for Portugal.
Meanwhile, Iran bring in Ghoddos for Jahanbakhsh.
66 min: Spain threaten to take the lead
Ronaldo takes a shot from the outside the box. But it doesn't test the Iranian goalkeeper. It's still 1-0 in Saransk and Iran are yet to score with their own men in this competition.
Saiss is the saviour for Morocco. Isco gets a good ball from the right and he heads it towards the far post but it's headed off to a corner by the centre-back. Pique gets another header from the corner but it hasn't turned into a goal.
It remains 1-1 in Kaliningrad. Meanwhile, Fajr comes in to replace Belhanda for Morocco, their first change of the night.
55 min: Spain survive!
Morocco's Amrabat shoots a screamer from outside the box. From the outside of his foot, the ball hits the crossbar. David de Gea could have done nothing there.
Meanwhile, Iran are creating some chances and putting pressure on the Portuguese defence in Saransk. Some action at the other end after the VAR drama.
53 min: VAR intervention and Ronaldo misses a penalty
Iran were miffed after VAR intervened and the referee took another look at the foul on Ronaldo. Haji Safi was booked and Ronaldo had a chance to double the lead from the spot.
The Real Madrid star though was denied by young Beiranvand, who dived to his right and held to the ball.
50 min: Cristiano Ronaldo goes down inside the box
Portugal have started well here. Cristiano Ronaldo, who tried to cut in from the left went down inside the box and claimed a penalty but the referee was unmoved.
Meanwhile, Pique gets away from a booking once again, this time with a deliberate handball inside the box. It's 1-1 still.
Both Portugal and Spain have had a lot of possesion
Portugal have had 71% possession in the first-half against Iran in Saransk. They had three shots on target and a total of nine attempts.
At the other end, Spain have had 70% possession but it's tied 1-1 in Kaliningrad. However, Sergio Ramos-led team are looking good for more.
Half-time: Portugal 1-0 Iran; Spain 1-1 Morocco
As it stands, Portugal are on top of Group B with Spain at the second spot. Iran need a better effort in the second half to change things.
Despite some nervy moments at the back, Iran managed to hold on and it looked like they would go into the break in Saransk at 0-0. However, a blinder from Quaresma in the 45th minute gave Portugal the lead.
In Kaliningrad, Spain have never looked back since Isco got them the equaliser. Andres Iniesta has been on top of his game and the La Roja nearly doubled their lead when the former Barcelona man slid a ball in for Diego Costa. It went inches wide off the post.
45 min: Goal! Portugal take the lead in Saransk
Goal! Quaresma scores a blinder. Relief for Portugal. The right-winger becomes the first man who is not Ronaldo to score a goal for Portugal in the ongoing campaign.
Brilliant effort. He had been trying to put a lot of balls in from the right with little success. However, this time he took matters into his own hands and cut in from the left and fired into the top corner with the outside of the right boot. Delightful finish.
34 min: Spain are starting to dictate the play
The trio of Jordi Alba, Isco and Iniesta are causing a lot of problems for Morocco. Meanwhile, four Moroccan players have already been booked.
In Saransk, Raphael Guerrero goes into referee's books. Free-kick for Iran, Ezatolahi's header easy save for Rui Patricio. The Iran fans though are buzzing at the stands, plenty of them have come in to watch the Team Melli make their bid for their first-ever knockout stage appearance.
25 min: Spain could have conceded another one
Goal-scorer Boutaib could have added another one. He went one-on-one with David de Gea but slammed it straight to the Manchester United custodian.
Brilliant open football this. Iniesta though is making sure Spain are always threatening the Moroccan defence.
24 min: It's 1-1 in Kaliningrad and goalless in Saransk
As it stands, Spain are on top of the Group B table and will take on Russia in the last 16.
19 min: Isco gets the equaliser for Spain
Okay, Spain haven't taken long to get the equaliser here. Isco just needed to be at the right place at the right time and he did exactly that. Andres Iniesta from the left passed it back to the Real Madrid midfielder, who fired it past the Moroccan goalkeeper.
Meanwhile, Iniesta is on fire here.
16 min: Ronaldo gets a free-kick just outside the box
After Spain slipped in Kaliningrad, Portugal had an opportunity to go ahead in Saransk.
Ronaldo, who got a free-kick just outside the box, tries to loft it over the ball but a deflection gives them a corner. Nothing comes off it though.
14 min: Morocco take the lead in Kaliningrad
Boutaib puts Morocco in the lead. Spain are lucky not have lost Pique after the Barcelona centre-back made a reckless challenge on the goal-scorer five minutes ago. It's all happening here.
8 min: Iran's defensive error could have costed them
Not happy scenes for the large section of Iran fans at the Mordovia Arena as lack of communication between the goalkeeper and the defender nearly costs them. Joao Mario had a good chance to bulge the net from just outside the box but he shoots it over the crossbar.
3 min: Ronaldo gets his first shot on goal
3 min: It has been only three minutes since the match started in Saransk and Cristiano Ronaldo already has a shot on goal. He hit it straight into Beirenvand's chest.
Notably, Ronaldo had put Portugal in the lead by this time in the last two matches.
Andre Silva gets Portugal underway in Saransk
1 min: Andre Silva gets the ball rolling. He has got his first start of the World Cup today. Can he make an impact? Portugal have opted for a 4-4-2 set-up today.
All set for Monday's double header
The national anthems of Portugal and Iran have just over. Cristiano Ronaldo along with Iranian captain Haji Safi are out in the middle for the coin toss.
Meanwhile, Spain and Morocco are set for the kickoff in Kaliningrad.
Confirmed line-ups here
Portugal have made three changes while Iran have made only one.
POR IN: Andre Silva, Adrien Silva, Quaresma; OUT: Moutinho, Bernardo Silva, Guedes
IRN IN: Jahanbakhsh; OUT: Ansarifard
Here's the confirmed line-ups for Spain vs Morocco.
It's a blockbuster double header
Group B leaders Spain, who are taking on bottom-placed Morocco have the best chance among the four teams to qualify for the Round of 16. The La Roja just need a draw to progress.
Even a defeat will take them to the next round, provided they have a better goal difference than the other two contenders.
On the other hand, Portugal, led by in-form Cristiano Ronaldo will be hoping to clinch a win although they can also go through with only a draw. On the other hand, Iran, who defeated Morocco, need nothing less than a win to progress.
There are slim chances of them going through with a draw if Spain lose but they need score a lot for that to happen.