With centuries of Indigenous cultural history, ancient ruins, and resplendent cities, Mexico is brimming with beautiful places. But this can make choosing a place (or several places) to visit in Mexico a challenge. Do you want to spend your days stretched on a beach in the Yucatán Peninsula or in idle relaxation sitting beside a pueblo plaza? Then again, why not both?
To help you decide, here are our top picks for the best places to visit in Mexico.
- Location: Oaxaca
- Come for: a heady mix of traditional and experimental cuisine, ancient ruins, and a vibrant arts scene
- Where to stay: Hotel Sin Nombre
Tucked high up in the Sierra Madre de Oaxaca, Oaxaca is a place where overflowing baskets of spices and textiles sit beside cafés serving up artisanal coffee. Cuisine is a pillar of the city’s soul, whether in the form of crispy, coal-grilled tlayudas on the street or high-brow rooftop cocktails.
A capital for mezcal artistry, Oaxaca is known for its dozens upon dozens of mezcalerias. Pull up a chair at La Mezcalerita, a veritable library of mezcal, with three downstairs rooms and an appealing rooftop patio—perfect for sunset.
How to get to Oaxaca
The most direct way to get to Oaxaca is to fly into the Oaxaca International Airport (OAX). Travelers can also connect in Mexico City for the nearly 90-minute flight.
- Location: Quintana Roo
- Come for: tranquil lagoon life that is still flying relatively far below the typical tourist radar
- Where to stay: Hotel Makaaba Eco-Boutique
Laguna de Bacalar is the second largest lake in Mexico, with colors that change from aquamarine to cobalt because of the different depths of the water, earning it the nickname “The Lake of Seven Colors.” Bacalar has a reputation for eco-friendly resorts, hidden cenotes, and mangrove channels for kayaking. Life is slow-paced here—lights are usually out by 9 p.m., and that’s how the locals like it.
How to get to Bacalar
Bacalar is a four-hour drive south of Cancun, which helps it retain its remote vibe. In December 2023, the opening of the airport in Tulum will cut that drive nearly in half. Travelers can also fly into the city of Chetumal and drive for 30 minutes.
3. Puerto Escondido
- Location: Oaxaca
- Come for: epic surf and the culture that comes with it, plus undeveloped beaches, bioluminescent bays, and hot springs
- Where to stay: Villas Carrizalillo
Mexico is in a constant state of development and some foreign investors have set their sights on coveted real estate. But in this port town, visitors can still eat fish tacos underneath shady palapas, grab an open-air collective van (a one-way ride will cost roughly 10 pesos), travel to the market downtown, and surf along windswept beaches at dawn, in large part thanks to efforts from tourists, expats, and locals to control development.
How to get to Puerto Escondido
Puerto Escondido has a very small airport. For an accessible alternative, travelers can connect in Mexico City or Guadalajara. A larger international airport is in Huatulco, which is about 90 minutes away.
4. Isla Holbox
- Location: Quintana Roo
- Come for: idyllic car-free island living with spectacular beaches, yoga, and a growing foodie scene
- Where to stay: Ser Casasandra
This island off the coast of the Yucatan peni nsula feels as much Caribbean as it does Mexican, with a blend of car-free streets and the lilt of steel drums. Though admittedly less Robinson Crusoe–esque than it used to be thanks to an infusion of boutique resorts like Nomade Holbox and NÁAY Boutique Hotel Punta Coco, this remains a place for freshly caught and grilled seafood and beaches that seem to stretch on forever.
How to get to Isla Holbox
Fly into Cancun International Airport and take a two-hour taxi, or hop on an ADO bus up for a four-hour ride to Chiquila. From there, take the 15-minute ferry to Isla Holbox.
5. Puerto Vallarta
- Location: Jalisco
- Come for: a beach-meets-city scene where locals and tourists mingle
- Where to stay: Casa Kimberly
Puerto Vallarta is a vibrant mixture of visitors and locals, where bars, restaurants, and shops are unlikely to use U.S. dollars outside of tourist centers. The city buzzes with action, whether through the pulse of the Malecon boardwalk until the wee hours or lively cobblestone streets of Zona Romantica. At the end of the day, travelers can enjoy sunset above the Bay of Banderas.
How to get to Puerto Vallarta
Several U.S. airports, including New York (JFK), San Francisco (SFO), and Los Angeles (LAX) offer direct flights to Puerto Vallarta.
- Location: Quintana Roo
- Come for: all-inclusive hotels, white-sand beaches, and a lively downtown
- Where to stay: Belmond Maroma Resort & Spa
Cancún is what put the Mexican Caribbean on the map, for good reason: Few places offer better white-sand beaches or all-inclusive resorts than this spot on the Yucatán Peninsula. Cancun’s once locals-only downtown is starting to gain traction from travelers who want to venture outside the Hotel Zone. Here, visitors can get another taste of the city when encountering its street art, taco trucks, and bustling markets like Mercado 28.
How to get to Cancun
With the second busiest airport in Mexico, it’s one of the easiest places in the country to access.
- Location: Guanajuato
- Come for: colorful architecture and growing wine tourism
- Where to stay: 1850 Hotel Boutique
Guanajuato is a great jumping-off point for exploring the state’s growing wine route (there are more than 30 wineries in the Guanajuato Grape and Wine Association) as well as regional dishes like enchiladas mineras—head to Enchiladas de Lupe for a delicious one. The city also hosts the annual Festival Internacional Cervantino, which invites musicians, theater performers, and other artists from all over the world to showcase their culture.
How to get to Guanajuato
The main airport in the state of Guanajuato is in Leon, about an hour’s drive from the city. It has a few direct flights from the USA, but travelers can get to the airport with direct flights from Tijuana, Mexico City, Puerto Vallarta, and Monterrey.
8. Mexico City
- Location: Mexico City
- Come for: world-class hotels, museums, and restaurants
- Where to stay in Mexico City: Circulo Mexicano
No visit to Mexico is complete without exploring the world-renowned restaurants, Aztec ruins, and 24/7 vibe of its capital city. Walk around Roma Norte and other vibrant neighborhoods, each one offering something different from the next. Thanks to its efficient (and cost-effective) mass transit, devouring everything from Diego Rivera murals to inventive cocktails from the top floors of luxury hotels is possible.
How to get to Mexico City
Mexico City’s airport has direct flights from all major U.S. gateways.
- Location: Puebla
- Come for: mole, mole, mole!
- Where to stay: Banyan Tree Puebla
Puebla has fostered a scene that is just as proud of its heritage and tradition (it’s said to have a church for every day of the year) as it is of its experimental restaurants, with eateries like Moyuelo and Áttico 303 fusing traditional Mexican ingredients with international techniques and recipes. The city’s kitchens and street carts offer temptations like mole (a dried chile sauce) in every shade, overstuffed bread roll sandwiches known as cemitas, and tacos arabes stuffed into fluffy lavash-style bread.
How to get to Puebla
Puebla has its own international airport with direct flights from Houston (IAH), but consider flying into Mexico City, which has ample connections. From the Benito Juarez airport, you can hop aboard an express bus and ride two hours to Puebla.
10. San José del Cabo
- Location: Baja California Sur
- Come for: Cabo beaches and fantastic dining without the overwhelming hum of tourists
- Where to stay: Acre Baja
Los Cabos consists of Cabo San Lucas and San José del Cabo, which are connected by a long stretch of resort-lined roads known as the Tourist Corridor. As Cabo San Lucas is the more visited of the two, San José del Cabo is where travelers go to escape the crowds. Those visiting San José del Cabo can experience a thriving farm-to-table scene thanks to organic farms Flora Farms, Tamarindos, and Acre Baja that double as outdoor restaurants.
How to get to San José del Cabo
San Jose del Cabo’s international airport is the gateway to Los Cabos. It has direct flights from most major U.S. hubs.