Cruz Azul booked its place in the Liga MX 2018 Apertura final with a 1-0 victory over Monterrey on Saturday in Estadio Azteca.
Argentine Milton Caraglio netted the only goal of the game in the 55th minute, with Cruz Azul advancing from the 1-1 aggregate draw due to its higher final position in the Apertura regular season table.
Cruz Azul will host the second leg of the final, likely next Sunday in Estadio Azteca, and will face either Club America or Pumas, who drew 1-1 in their first leg and play the return game on Sunday. The final will be a Mexico City derby whichever advances.
Home side Cruz Azul took the game to Monterrey from the start, but struggled to create real chances until Nico Sanchez was judged to have brought down Roberto Alvarado in the penalty area.
Caraglio stepped up to take the penalty in the 36th minute, but shot wide to leave the score 0-0 at half-time.
Caraglio made up for the error 10 minutes after the break, when he finished into the bottom corner after Monterrey goalkeeper Marcelo Barovero spilled a shot from Adrian Aldrete.
Monterrey only had one shot on goal over the 90 minutes and, even as Rayados chased a goal with time dwindling down, it was La Maquina who looked the more likely to score, with Martin Cauteruccio missing an easy chance from a counter-attack in the 88th.
Cruz Azul, one of Mexico's "big four" clubs, is going for its first title since 1997.