The Best Colonial Cities in Mexico
Published Jul 3, 2026 · updated Jul 3, 2026
If you’re asking which colonial city to pick, here’s the honest short answer: Oaxaca if you’re here for food and craft, Guanajuato if you want the prettiest streets and don’t mind hills, Mérida if you want safe and easy, and San Cristóbal if you want cool weather and Indigenous highland culture. San Miguel de Allende is beautiful and I’d send you there second, because it’s the most Americanized and priciest of the bunch.
Oaxaca city
The one most people fall hardest for. The food scene is the real thing, mole, tlayudas, mezcal, plus markets and craft villages a short ride out. Walkable center, great weather most of the year. The catch: it’s had a genuine boom, so the center is busier and pricier than it was, and big festivals like Día de Muertos and Guelaguetza book out months ahead. Come slightly off-peak.
Guanajuato
The best-looking of all of them. Colorful houses stacked up a ravine, tunnels under the city, plazas with live music. It’s a student town, so it feels alive and cheap. The honest downside is the terrain, callejones (alleys) and stairs everywhere, so it’s rough on knees and useless with a big suitcase. Pack light and wear real shoes.
Mérida, Yucatán
The easy pick. Flat, grid-planned, and consistently ranked among the safest cities in Mexico. Great base for cenotes, ruins, and the Gulf coast. The trade-off is heat, it’s genuinely hot and humid much of the year, and the historic center, while handsome, is less dramatic than Guanajuato.
San Cristóbal de las Casas, Chiapas
The outlier: high, cool, misty, wrapped in pine forest and Tzotzil and Tzeltal Maya culture. Cheapest of the group and deeply atmospheric. It’s more remote, the nearest airport is Tuxtla, about an hour down the mountain, and occasional roadblocks and protests in Chiapas are a normal part of regional politics, not a reason to stay away, just something to check before travel days.
What a friend here would tell you
Don’t try to do three of these in one trip, the distances are long and the whole point is to slow down. If it’s your first colonial city and you want zero friction, start with Mérida. If you already love Mexican food and want the trip you’ll talk about, book Oaxaca and give it at least four nights.
Quick verdict
- Food and craft: Oaxaca
- Prettiest, if your knees are fine: Guanajuato
- Safest and easiest: Mérida
- Cool weather and highland culture: San Cristóbal