The game looked to be heading towards a draw after Vinícius Jr.’s opener was canceled out by Joselu in the first-half, but Benzema was on hand to settle the tie in a thrilling finale.
The Frenchman volleyed in Rodrygo’s cross at the back post to give his side the lead in the 88th minute before settling the match with a free-kick in the 10th minute of added time.
However, his final goal was scored against an outfield player after Espanyol’s goalkeeper Benjamin Lecomte was sent off after a professional foul on Dani Ceballos.
The host had a replacement goalkeeper on the bench but had already used its allotted substitutions so defender Leandro Cabrera was eventually handed the gloves.
From the resulting free-kick, Benzema stepped up and placed his effort out of the reach of the makeshift goalkeeper.
The victory means Real Madrid has now won all three of its matches so far this season and sits top of the table on goal difference, ahead of surprising Real Betis.
“We could see that they were starting to get a bit tired and we took advantage of that,” Madrid midfielder Toni Kroos told reporters after the game.
“Winning away from home is never easy, but we’ve done it three times on the bounce. We’re very happy.
“It’s important to know how to dig in. Our opponents are always good quality and we’re going to have to face that every four days from now on. At times, during the season, we have to dig in and we know how to do that.”
Real Madrid faces Real Betis in its next league fixture with both sides yet to drop points this season.