19 Amazing Cities to Visit in Mexico (Expert Guide)
Looking for the best cities to visit in Mexico? You’re in the right place.
Mexico is a large country (the 13th largest in the world in terms of land area) and has hundreds of cities with populations of over 100,000.
The best Mexican cities have:
- unique attractions, that are unlike what you can find elsewhere
- beautiful colonial architecture
- ruins that date back to thousands of years
- their own language dialects, and cuisine unique to that area
I lived in Mexico City, and was lucky to have close Mexican friends who I went on many day trips, weekend (and longer) getaways to different cities around the country.
Some of the best cities in Mexico (besides Mexico City) that I visited were:
- Guanajuato (pictured above in both photos, because it’s my favourite)
- Morelia
- San Cristobal de Las Casas
- Oaxaca + over a dozen others
In total there are 19 Mexican cities that I believe highly deserve a spot on your Mexican itinerary or bucket list.
In this article, I will give you:
- the best cities in Mexico
- what makes them worth a visit.
So, let’s jump in – I’m excited to share the best cities to visit in Mexico!
Best Cities to Visit in Mexico
There is much more to do in each Mexico city than what I will list below. Rather than list everything there is to do, I’m going to highlight what makes each city unique
Wondering which of these Mexican cities is best for YOU? Here are some
- Scenic beauty: Cancun, Monterrey, Playa del Carmen, Merida, San Cristobal de Las Casas, Puerto Escondido, Mazatlan, Durango
- History: Campeche, San Cristobal de Las Casas, Mexico City, Puebla, Guanajuato, Guadulajara, Durango
- Travelling with Kids: Mexico City, Cancun, Playa del Carmen, Campeche, Merida
- Foodie: ALL of them.
1. Oaxaca city
State: Oaxaca
Population: 747,000
Oaxaca is a city in southern Mexico that has had a huge uptick in popularity in recent years, from influencers visiting and discovering its charm. The downtown core is a UNESCO World Heritage Site.
When I first visited Oaxaca, it was virtually unknown. But now, I see it finally getting the attention that it deserves on social media, and from seasoned travellers.
You need at least a weekend (about 3 days) to see everything in Oaxaca and nearby.
Best things to do in Oaxaca
- Go inside the Templo de Santo Domingo to admire the ceiling made of gold
- Try the Oaxacan unique cuisine by visiting food markets and doing a food tour with Oaxacking
- Step thousands of years into history at the ruins of Monte Alban, which is also a UNESCO World Heritage Site
- See the Arbol del Tule, (a massive tree – you would need 15-20 people holding hands to fit around it) believed to be 3,000 years old. Located 9 km (6 miles) outside of the city centre
2. Puebla
State: Puebla
Population: 3.3 million
Puebla is a city south of Mexico City that has some of the most memorable churches and other architecture that I’ve ever seen. I could not stop taking photos of all the unique buildings.
The most unique and striking thing about Puebla is that it has nearly 300 churches (288 to be exact) and some of them were the most unique-looking churches I’d ever seen – pictured below.
From Puebla, we also visited the neighbouring town Cholula which I recommend making time for as well.
Best things to do in Puebla
- Admire the hundreds of unique churches
- Buy sweets. there are said to be over 300 different types of candy that are unique to the city of Puebla
- Check out the colourful buildings in “Alley of the Frogs” (Callejón de los Sapos in Spanish.)
- Visit the oldest public library in the Americas (Biblioteca Palafoxiana)
- Shop for Talavera pottery, which is unique to the region at the Mercado Municipal La Acocota.
There are countless boutique hotels to stay at in Puebla; some which have built in spas, swimming pools and their own restaurants. I recommend Casona de los Sapos Hotel Boutique – beautiful rustic rooms, indoor swimming pool, breakfast included
3. Guanajuato city
State: Guanajuato
Population: 194, 000
I was amazed by the city of Guanajuato, I couldn’t believe how colourful it was.
Of all the cities I visited, Guanajuato is the prettiest city in Mexico and one that I’d recommend anyone add to their list. It’s no surprise that it’s also a UNESCO World Heritage Site.
While you’re in Guanajuato, take some time to just walk around – Guanajuato has the most romantic vibe. You will need about 4 days to have time for everything.
Things to do in Guanajuato
- Do a mine tour of one of the nearby abandoned silver mines
- Visit the Mummy Museum (especially if you like dark and morbid things)
- Check out the underground tunnels
- Get a view from the city from above – it looks like splatters of a rainbow
Casa Estrella de la Valenciana Hotel Boutique in Guanajuato has STUNNING views, a pool, bright and airy rooms
4. Pachuca
State: Hidalgo
Population: 682,000
Pachuca is an undiscovered gem of a city in Mexico. In the state of Hidalgo, which is off the beaten track for most travellers, I would never have realized Pachuca was worth visiting unless I happened to end up there.
I made friends with a girl who was originally from Pachuca. I went there a few times and was able to visit her family.
Pachuca is such a walkable city, with a similar feel to Guanajuato; mountains, and dotted with pastel-coloured buildings. Pachuca is much larger than Guanajuato city, and also much closer to Mexico City (less than a 2-hour drive.)
Here are some reasons to add Pachuca to your Mexico City itinerary:
- You can see the largest mural in Mexico, Macromural de Palmitas.
- Walk 1,000 stairs up to the famous statue of Chris (Cristo Rey)
- Visit bakeries, and be sure to try a paste (which is known as an empanada in other parts of Latin America) a local delicacy; native to the state of Hidalgo
The best way to get to Pachuca is by bus, which you can take from Mexico City or other Mexican cities. You can get great places to stay for $100 per night, such as Gamma Pachuca (indoor swimming pool, on-site restaurant, and nice courtyard to relax in.)
5. Mexico City
Population: 22.51 million
Mexico City is the largest city in North America, very diverse in terms of its neighbourhoods, and also wildly interesting.
I knew very little about Mexico City before I moved there, but there was so much to see and I consider myself very lucky to have lived there.
Here’s what will make you say ‘wow’ about Mexico City, also known colloquially as DF (Distro Federal):
- It’s the highest city in North America, at 7,350 feet above sea level
- It’s the oldest city in the Americas
- It has the largest park in the Americas, Chapultepec Forest. (Yes, even bigger than Central Park in New York.)
- It has the 2nd most museums of any other city in the world
I recommend spending at least 4 days in Mexico City, plus extra time for day trips to other nearby towns and cities that are worth visiting.
Best things to do in Mexico City
- Ride the colourful wooden boats at Xochimilco Floating Gardens, which is a UNESCO World Heritage Site (pictured above)
- Visit museums. The best is the Museo de Anthropologia, or the Aztec Ruins at the Grounds of the Great Temple Museum (Museo del Templo Mayor)
- Visit Chapultepec Forest, the largest city park in the Americas. Go inside Chapultepec Castle (the only royal castle in the Americas) and get a view of the city
- Do a day trip to the Teotihuacan Pyramids, just north of the city. They date back to over 2,000 years
- Walk through the charming Coyoacan neighbourhood, which has colourful buildings, a bohemian atmosphere and great food
Pro Tip: Mexico City is great for both kids or adults, and I would recommend staying Centro Historic, or the neighbourhoods Coyoacan, Polanco or Santa Fe when you visit.
6. Monterrey
State: Nuevo León
Population: 5 million
Monterrey is one of the lesser-visited cities in northern Mexico, and the 3rd largest city in all of Mexico.
Monterrey is worth considering as a place to visit, because of the amazing scenic beauty surrounding it, plus the things to do right ‘in’ the city. It’s a great place to go if you want a mix of city and scenic nature-based attractions.
Unique things to do in Monterrey
- Feel like you’re in Venice by taking a boat ride along the river Paseo Santa Lucia. There’s also a nice riverwalk
- Try candy and learn about sweets unique to the Nuevo Leon state at the Museo del Dulce
- Explore caves at the Grutas de Garcia, which formed 60 million years ago (40 km or 24 miles from Monterrey city)
- See the “Horse Tail Waterfall (Cascada Cola de Caballo), which is 82 feet tall, and just 45 km (27 miles) from Monterrey
7. Merida
State: Yucatan
Population: 1.2 million
The city of Merida in the Yucatan peninsula has been making headlines for being the safest city in Mexico. It’s a quieter city, with quite a few American retirees, and students from other areas of Mexico.
It has a nice, laid-back vibe. Merida is quite spread out, so you need either a car or to take Uber to enjoy it. I recommend staying in the Centro, so that you can walk to most things you need.
If you’re looking for a city with lots of activities and things to do, then you may be happier in Cancun. But Merida is great if you’re looking for somewhere a bit more low-key, with great day trip options.
Unique things to do in Merida, Mexico
- Visit the Paranormal Museum (Museo de Paranormal) See their Facebook page here
- Visit nearby cenotes which are closer to Merida than any other city in the Yucatan state. The closest cenotes to Merida are Cenote Xlacah and Cenote San Ignacio (each about a 35-minute drive) or Cenote Kankirixche (1 hour drive from Merida)
- Although the city is quiet, there are lots of great day trips:
- Izamal (1 hour from Merida) is known as the ‘city of three cultures.’ It’s a town of just under 30,000 people and has some amazing things to do
8. Cancun
State: Yucatan
Population: 1 million
Cancun is one of the most visited cities in Mexico, known for its beach atmosphere, nightclubs, and high-end resorts.
I have to admit, I used to turn my nose up at Cancun; thinking it wasn’t as authentically Mexican as some of the other cities I’d been to. But, I was wrong.
Cancun is a decent-sized city, and there’s a reason why people love to come here for a vacation. There’s more to do besides beaches and nightclubs.
As a tourist in Cancun, you’d likely be staying in The Hotel Zone (“la zona hotelera” in Spanish.) You can head downtown (Ciudad Cancun) where you can experience more of the ‘real’ Mexico local life with delicious food
Here’s what makes Cancun, despite its popularity, a worthwhile city to visit in Mexico:
- There’s an underwater museum about x from the Cancun coastline – called MUSA underwater museum. There are glass bottom boat tours, snorkel and scuba dive tours from Cancun
- Xoximilco Mexican Floating Fiesta (similar to the ones in Mexico City)
- The Cancun Scenic Tower (Torre Escenica) gives you a beautiful view of the Yucatan coastline
- Lots of fun things to do nearby – Xplore Adventure Park, swimming with whale sharks, snorkel tours, and ferry rides to nearby islands
- Day trip options from Cancun:
- Mayan ruins, such as the Chichen Itza (2.5 hours away) or a lesser-visited one called Ek Bakam (less than 2 hours from Cancun)
- Tulum ruins (less than 2 hours)
- Isla Mujeres (1 hour ferry ride)
- Cozumel Island (less than 3 hour ferry ride)
The hotel you pick may depend on what kind of trip you’re taking. Some are ideal for honeymooners, others for college students on spring break, babymooners, or families with children.
9. Playa del Carmen
State: Yucatan
Population: 281,000
Playa del Carmen is another city in Yucatan, much smaller than Cancun and located just 1 hour from Cancun.
Personally, I would choose to stay in Playa del Carmen over Cancun and Merida, and here’s why:
Playa del Carmen is much more compact than the other Yucatan cities, and easier to get around without a taxi. It’s walkable, laid back, and similar to Merida and Cancun – close to its own nearby cenotes, and Mayan ruins that you can visit.
Playa del Carmen has more things to do in the city area than Merida, but less of a commercial feel than Cancun
The attractions in Playa del Carmen are very similar to Cancun and Merida – excellent beaches, swimming with turtles, snorkeling and diving, and visiting nearby Mayan ruins and cenotes.
- Closest cenotes to Playa del Carmen: Cenote Azul (also known as Blue Cenote, just 25 minutes away) Cenote Suytun (less than 2 hours)
- Closet Mayan ruins: Playa del Carmen Archeological Site (10 minutes),
So, while Cancun and Merida are great cities too, I would probably use Playa del Carmen as the base if you want to stay in one place in the Yucatan; especially if its for a longer period of time.
I recommend Hotel Lunata in Playa del Carmen (has a courtyard with garden, well-located near the beach and to the town)
10. Puerto Vallarta
State: Jalisco
Population: 568,000
Puerto Vallarta is a popular beach city on Mexico’s Pacific coast; it’s very international tourists looking for a mix of beach, nightlife, and nature things to do.
Banderas Bay (Bahía de Banderas) where Puerto Vallarta is located is the largest bay in Mexico, at over 2900 feet deep, and 68 km (42 miles) long. It’s a great place to see humpback whales who flock there in the winter months.
Puerto Vallarta isn’t the kind of city with many attractions and things to do; similar to Playa del Carmen, it’s more about the relaxing beach vibe.
Why visit Puerto Vallarta
- Some of the best Mariachi in Mexico. Jalisco, the state where Puerto Vallarta is located, is the capital of Mariachi
- Snorkel in the Los Arcos National Marine Park, which has lagoons, caves and coral reefs. This tour is 3.5 hours long and costs around $50 per person
- Head out to the see with Vallarta Adventures to see humpback whales in the wild
11. Campeche
State: Yucatan
Population: 220,000
Campahce is another Yucatan city in the running for one of the best cities in the country.
Campeche (unlike most other popular cities in the Yucatan) is on the west coast of the peninsula, so it’s a bit off the beaten track; further than where most tourists travel to.
But, if you make the trek out here (2 hours from Merida), it’s worth it. The downtown core of Campeche is one of 35 UNESCO World Heritage Sites in Mexico.
Campeche is a small city, that feels more like a town. It has walkable cobbled roads with pastel-coloured buildings.
Aside from great beaches, here are some of the unique things to see and do in and near Campeche:
- See forts that were used to keep pirates at bay: Fuerte de San Jose el Alto (Saint Jose’s High Fort) and Fuerte de San Miguel (Saint Michael’s Fort).
- Walk along the Campeche Malecon (Walkway), a path that takes you along the coast of the Gulf of Mexico.
- Admire medieval churches, and historic mansions from the colonial period
Campeche is about the size of Playa del Carmen, but it’s more remote and quieter. It would make a great day trip, or 2-night stay.
Hacienda Campeche is a cute place to stay, with its own built-in swimming pool
12. San Cristobal de Las Casas
State: Chiapas
Population: 215,000
San Cristobal de Las Casas is interesting and striking, and one that stuck out to me the most of all the cities I travelled to in Mexico. It’s no surprise that its one of the pueblos magicos (magical towns) in Mexico.
San Cristobal is small, and you could probably see everything in a weekend. However, there are some highly recommended day trips.
Things to do in and around San Cristobal de Las Casas
- Visit the Musem of Amber
- Admire the yellowest cathedral in all of Mexico – Catedral de San Cristóbal de las Casas
- Take a day trip to Sumidero Canyon (2-hour drive). Tours from San Cristobal are usually 6-8 hours for the full day
- Visit nearby indigenous towns: San Juan Chamula, and Zinacantan (both about 30 minutes from the city.) I went to San Juan Chamula, and it was one of the most memorable things I ever did in Mexico
- Before or after your stay in San Cristobal, make the (4-hour drive) to Cascadas de Agua Azul stunning turquoise-coloured water with waterfalls
I recommend Taller de Juan Casa Hotel right in the centre of San Cristobal de Las Casas. Cute architecture, steps away from downtown, on-site restaurant
13. Mazatlán
State: Sinaloa
Population: 485,000
Mazatlan is a remote, but decently sized city on the Pacific coast of Mexico. Similar to Puerto Vallarta, it has a great beach town atmosphere and is fairly easy to get to because it has its own international airport.
Mazatlán is definitely one of the best cities to visit in Mexico, for a few unique reasons.
Mazatlan actually receives more Mexican tourists than Puerto Vallarta does. You’ll find yourself dining and sharing the beach with more ‘locals’ than you would in Puerto Vallarta.
Some key things that make Mazatlan special:
- The Malecón in Mazatlán is the largest oceanfront boardwalk in the whole world
- Mazatlán has the highest lighthouse in the Americas (called El Faro)
- You can ride in a Pulmonía, which is a small, open-air car (kind of like a golf cart.) They are completely unique to Mazatlán!
- Glorieta Rodolfo Sanchez Taboada plaza has cliff divers that you can watch
Mazatlán has several hotel chains, like Marriott and Hilton. If you want to be on the beach, I would grab this place – Varali Grand Hotel. Has an outdoor pool, its right on the ocean, with restaurant on-site.
14. La Paz
State: Baja California Sur
Population: 1.9 million
La Paz is the largest city in Baja California Sur. Tourists often go to “Los Cabos” which is about 2 hours south and overlooks the city of La Paz.
But there is a lot to draw you up to the city of La Paz too, which is worth seeing.
La Paz a city that almost doesn’t feel like a city. While there is a beautiful historic centre, most of the things to do in La Paz involve outdoor adventure activities.
Things to do in La Paz, Mexico
- Walk, or bike along the Malecon, the seaside boardwalk. Spot sculptures, sandy beaches
- Spend a day in the historic district. See the Nuestra Señora del Pilar church, and admire the colourful murals around the city
- Take a day trip to nearby towns, such as Todos Santos, and two other mining towns – El Triunfo and San Antonio.
The best place to stay in La Paz is a toss-up between Quinta Lolita, and The Mantarraya Outpost
15. Durango city
State: Durango
Population: 676,000
The city of Durango is said to have the most beautiful architecture in Northern Mexico. Like Monterrey, (which is quite far – a 6-hour drive) Durango is surrounded with its own wilderness and scenic beauty.
Durango is a much smaller city than Monterrey (although still decent-sized) and has nearby waterfalls, hot springs and nature preserves.
Durango has a really cute historic centre, with a cable car that you can ride to get a view from above.
In addition, here are some other things to do near Durango:
- Visit the Old Wild West Town, which has been used in movies (15 minutes from Durango)
- Soak in hot springs (balnearios.) The closest to Durango city are Balneario San Juan (6 km or 3.5 miles) and Balneario San Juan Navicoayan (11.2 km or 7 miles). They both have waterparks and are great for families.
- Take a day trip to Nombre de Dios, a unique little town with old stone churches, and a producer of mezcal (just under an hour’s drive from the city of Durango )
- See wildlife in The Tecuán, an ecological park nearby
16. Morelia
State: Michoacán
Population: 1 million
Morelia is the largest city in Michoacán, which is considered to be ‘the soul of Mexico’ because of its deep cultural roots and architecture.
The state of Michoacán is also the largest producer of avocados in Mexico, and Morelia is a great place to enjoy fresh fruits and restaurants that serve traditional Michoacan dishes.
My Mexican boyfriend (at the time) wanted to make sure I saw Morelia, so we made the 3.5 drive out there from Mexico City. We ate some great food while we were there! (even though I’m a vegetarian.)
Morelia doesn’t have the best safety record, because of the state that it’s in. I never felt unsafe there, however.
Here are the unique attractions in Morealia that make it worth a visit:
- Visit the Morelia Aqueduct Water Box, an 18th-century building which is featured on the 50 peso banknotes
- The Monarch Butterfly Sanctuary can easily be accessed from Morelia (2.5 hours away) where monarchs migrate between November and March
- Head to the government palace of Morelia, and check out the colourful Michoacan mural
- See a beautiful library with high arches, and stunning murals – Biblioteca Pública de la Universidad Michoacana
- Similar to other cities, Morelia is also known for its own unique candy. Shop for candy at the Mercado de Dulces y Artesanias
- Shop for unique handmade Mexican souvenirs stalls all around the centro
17. Santiago de Querétaro
State: Queretaro
Population: 1.4 million
Queretaro city (also known as Santiago de Querétaro) has been said to be one of the safest places in Mexico, and is probably in the top of 5 of best cities to visit in Mexico and is well worth putting high on your priority list.
It has some of the prettiest, most unique buildings, amazing daytrip options that would make you wonder why it isn’t more famous, and is all around a charming place to spend time.
The surrounding mountains and its altitude (1,820 meters above sea level) give it a cooler climate than many other Mexican cities, which may mean you don’t ‘love’ it if you’re a heat person.
Amazing things to do in and around Queretaro
- Admire the Acueducto de Querétaro, such a unique building unlike anything you’ve seen before
- Take a day trip (2.5 hours) to Grutas de Tolantogo, which has beautiful turquoise hot springs. This tour is about $150 per person, leaves from Queretaro city
- Admire mountains and waterfalls at the Reserva de la Biosfera Sierra Gorda
18. Acapulco
State: Guerrero
Population: 1 million
Acapulco is the 2nd largest Pacific coastal city in Mexico, after Tijuana. Acapulco is quite scenic – its surrounded by mountains, and has both sandy beaches and rocky shorelines.
Back in the 70s and 80s, Acapulco was a tourist hotspot (kind of like Cancun is now.)
I took a bus to Acapulco from Mexico City. I made the trip several times; the scenery in between is mountainous and scenic. By the time I visited there, you could tell it used to be a lot busier but was less so now.
There are two distinct areas of Acapulco – where international tourists tend to go, and where most Mexican families hang out.
However – Acapulco is making a comeback as a tourist hotspot. I’m glad, because honestly – it deserves it.
Things to do in Acapulco
- Spend time on the beach.
- Visit a 1700s Spanish fortress turned Museum – called the Museo Histórico de Acapulco Fuerte de San Diego
- Visit the Archaeological Tehuacalco Site
- Watch baby turtle releases at Tres Palos Lagoon
- Watch cliff divers at La Quebrada
19. Guadalajara
State: Jalisco
Population: 5.5 million
Guadalajara is a city in northern central Mexico. Like many Mexican cities, it’s walkable with beautiful architecture.
Guadalajara is less ‘exciting’ than Mexico City in terms of attractions, but the vibe is so much more relaxed, especially for a city its size.
Guadalajara is a nice city in itself and also has good day trip options, such as to the town of Tequila and Tonala. Overall, about 3-4 days in Guajualara would be enough to see and do everything.
Best things to do in Guadalajara
- Visit Hospicio Cabañas, a former orphanage that is now a museum
- Spend an afternoon walking through the Tlaquepaque neighbourhood, known for its clectic restaurants and cute shops.
- Shop in the Mercado San Juan de Dios (large indoor market), and try a “torta ahogada”
- Swim in lush hot springs
- Jose Cuervo Express for a tequila tour. You can even spend a couple of nights in the village of Tequila.
- Take a day trip to the seaside town of Chapala
Best Cities in Mexico FAQ
Here are some of the most commonly asked questions about different cities in Mexico, and which ones to choose for a vacation, to live, or other experience
What is the nicest city in Mexico?
There are so many nice cities in Mexico, that it’s impossible to narrow it down to only one. In terms of cities that are beautiful and safe, some of the nicest cities in Mexico are Durango, Campeche,
What is the nicest and safest city in Mexico?
The nicest and safest city in Mexico is probably cities in the Yucatan state, because that state has the highest safety record and is generally the safest place in Mexico. However, I wouldn’t disregard other amazing cities in Mexico located outside of Yucatan, such as Guanajuato, San Cristobal de Las Casas, Mexico City, and more.
Final Thoughts on Best Cities to Visit in Mexico
These were places I hadn’t even known existed, and it some ways it felt like being in Europe with the gorgeous architecture, cobbled roads and colourful buildings.
Mexico is a big place, and seeing all of these cities in one trip wouldn’t be easy. If you do want to try, then you will need a minimum of 4-8 weeks in Mexico; depending on how long you want to spend in each place.
Regardless, I hope that you have been able to add at least one Mexican city to your wishlist based on this article. And that it has highlighted what is special or unique about the Mexican cities you already planned on visiting. Buen Viaje!