Comparison

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 before the detail: 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, flat, and easy, and San Cristóbal if you want cool weather and living Indigenous highland culture. San Miguel de Allende is beautiful and I’d send you there second, because it’s the most Americanized and the priciest of the bunch.

They’re all “colonial cities,” but that label hides how different they feel on the ground. Below I compare them on the things that actually change your trip: the food, the terrain, the crowds, the cost, and how to get in and out. Want the wider category first? Start at colonial cities.

Oaxaca city

The one most people fall hardest for, and the food is why. This is arguably the best eating city in Mexico: the seven moles, tlayudas the size of a bike wheel, memelas, chapulines, and a mezcal culture that runs from dusty roadside palenques to serious tasting bars on Calle García Vigil. Eat at the Mercado 20 de Noviembre’s smoke-filled meat hall, then walk it off around the Zócalo and Santo Domingo church. The markets and craft villages a short colectivo ride out, Teotitlán del Valle for rugs, San Bartolo Coyotepec for black pottery, are the real arts-and-crafts draw.

The catch: Oaxaca has had a genuine boom, so the historic center is busier and pricier than it was five years ago, and the two big festivals book out months ahead. Día de Muertos, around the end of October into early November, and Guelaguetza, the big folk-dance celebration across two Mondays in July, are spectacular and completely saturated, expect inflated lodging and packed streets. Come slightly off-peak if you can. Getting there is easy: direct flights from Mexico City, or an ADO bus, roughly six to seven hours, from the capital. Give it at least four nights. More at the Oaxaca hub and the wider food tag.

Guanajuato

The best-looking of all of them, full stop. Guanajuato city is a former silver town crammed into a ravine, so it’s a stack of ochre, pink, and blue houses climbing the hillsides, with a maze of old mining tunnels running under the streets for cars. Ride the funicular up to the Pípila monument at sunset for the view everyone comes for, then get lost in the callejones. It’s a university town, so it stays cheap and genuinely lively, live music in Jardín de la Unión, students doing callejoneadas (singing walking tours) at night.

The honest downside is the terrain. It’s alleys and stairs everywhere, brutal on bad knees and useless with a big wheeled suitcase, you will end up carrying it. Pack light, wear real shoes, and book lodging you’ve confirmed isn’t up 200 steps. Getting there is smooth: fly into Bajío (BJX) airport, or take a Primera Plus or ETN bus. From here, San Miguel is a comfortable 90-minute-ish hop. Both sit in the Guanajuato state hub.

San Miguel de Allende

Beautiful and worth going, but know what you’re buying. San Miguel is the most polished, most Instagrammed, and most expensive of the group, with a large American and Canadian expat and second-home population. The pink neo-Gothic Parroquia on the Jardín is the icon, the rooftop-bar scene is excellent, and the whole center is walkable and flat-ish compared with Guanajuato. But prices, especially restaurants and boutique hotels, are closer to US levels, and Spanish is optional in a way that makes it feel less like Mexico and more like a very handsome resort town. Perfect for a comfortable, low-friction long weekend; not the place to go if you want grit and bargains.

Mérida, Yucatán

The easy pick, and the one I hand first-timers. Mérida is flat, laid out on a sane grid, and consistently ranks among the safest cities in Mexico, you can wander the Paseo de Montejo and the center at night without the low-grade calculation some places ask for. It’s a great base: cenotes, Chichén Itzá and Uxmal, the pink lagoons of Río Lagartos, and the Gulf coast are all day trips, and the nearby town of Valladolid makes an easy overnight. Sunday, the center closes to cars for a street party with food stalls and marimba.

The trade-off is heat. It’s genuinely hot and humid much of the year, and roughly March through May it’s punishing by midday, plan for early mornings and a siesta. The center is handsome but architecturally lower-key than Guanajuato’s drama. Reach it by direct flight, or ADO from Cancún, roughly four hours. More at the Yucatán hub.

San Cristóbal de las Casas, Chiapas

The outlier, and the one that gets under your skin. San Cristóbal sits high in the pine-covered highlands, so it’s cool, sometimes misty, and you’ll want a jacket at night, a shock if you flew in from the Yucatán heat. It’s the cheapest of the group and the most atmospheric: low painted houses, Tzotzil and Tzeltal Maya families selling textiles, and the nearby village of San Juan Chamula, whose church, with its pine-needle floors, candles, and syncretic rituals, is unlike anything else you’ll see. Deeply worth the effort.

And it is effort. The nearest airport is Tuxtla Gutiérrez, roughly an hour down the mountain by colectivo or shuttle. What a friend here would tell you: occasional roadblocks and protests are a normal part of Chiapas regional politics, not a reason to skip it, but do check locally before travel days and build in buffer, especially if you’re connecting to a flight. More at the Chiapas hub.

What a friend here would tell you

Don’t try to string three of these into one trip. The distances are long, the terrain and climate whipsaw from highland cold to jungle heat, and the entire point of a colonial city is to slow down, sit in one plaza, and eat well. Two cities in two weeks, done properly, beats four cities you half-saw.

  • 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 for years, book Oaxaca and stay put.
  • If your knees are good and you want beauty over convenience, Guanajuato.

Check the getting-around guide for the bus versus flight math between these, and costs and money so the San Miguel-versus-San Cristóbal price gap doesn’t blindside you.

Quick verdict

  • Food and craft: Oaxaca
  • Prettiest, if your knees are fine: Guanajuato
  • Safest and easiest, best first trip: Mérida
  • Cool weather and living highland culture: San Cristóbal
  • Polished and comfortable, at a price: San Miguel de Allende