Hi Lauren!
Letting guests know what is a better restaurant then another is difficult since it is a pure personal choice when booking dining at Walt Disney World. We all have our favorite dining stops when vacationing and Mexico is certainly one of my family’s favorites as well.
We prefer the restaurant,
La Hacienda de San Angel which is located outside of the Mexico pavilion on the water. The ambience is authentic and the menu is very good. I can’t resist ordering the shrimp tacos and one of their tasty margaritas on each visit. My grandchildren also find plenty of choices for them and they are very happy.
If you are lucky enough to be dining during the later evening hours you can also view the Illuminations show over the water. There are tables next to the windows and you can request one but of course that is not a guarantee.
The restaurant inside the Mexico Pavilion,
San Angel Inn, is ok but I have an onion allergy and everything is filled with onions it seems. Plus the ambience is very dark. You can hardly see the menus much less the food. It does have a strong following as well so taking a look at both of the restaurants menus would be key to deciding which one to book for your trip. Please note that the San Angel Inn restaurant is open all day for dining while the La Hacienda is only open from 4pm on for dinner. That alone might make a difference in your choice.
Either way you will enjoy a wonderful Mexican cuisine meal while in Epcot.