Mexico looked slightly more threatening in the early stages, but it was Belgium who took the lead when a Romelu Lukaku shot was saved by Guillermo Ochoa, only to have Eden Hazard fire in the go-ahead goal.
Mexico did eventually get on the scoresheet in the 38th minute when a penalty was called for a Laurent Ciman tackle on Javier “Chicharito” Hernandez. Andres Guardado stepped up and thumped the ball in to level the score at 1-1 heading into the break.
The second half began at a similar pace to the first, with Belgium instead of Mexico threatening in the opening minutes, and after 55 minutes the hosts went in front when Lukaku deflected in a Dries Mertens cross.
Belgium’s joy was short-lived, and just a few seconds later, a long ball from Hector Moreno landed at the feet of Hirving Lozano, who picked out the bottom corner to make it 2-2.
It was not long before Mexico took the lead for the first time in the match, with Lozano scoring a superb volley from a rebound.
A hectic period followed, though, and the hosts took advantage of some laxed defending, with Martens and Lukaku combining a second time, drawing the score at 3-3.
Lozano could have had a hat trick in the closing stages when he smashed a 1 v 1 just inches wide of Thibaut Courtois’ goal.
The final moments of the game continued to be back and forth, but at the final whistle, fans at the King Baudouin Stadium were treated to spectacular 3-3 scoreline.
Mexico’s next match will be on Monday when they travel to the city of Gdańsk to take on Poland.