How to travel from Oaxaca to San Miguel de Allende, Mexico

The distance between Oaxaca and San Miguel de Allende is around 668km (415 miles) and the quickest way to get there is to fly and then take the bus which takes around 5h 25m.

8 routes found

We've found 8 different ways to get from Oaxaca to San Miguel de Allende by plane, bus and car. The recommended routes, which include information on duration, ticket price, and level of difficulty, can be found below.

👋 Also check out San Miguel de AllendeOaxaca if you're planning a return trip.

🚀 Fastest
1
plane
+
bus
+
bus
+

Plane and Bus

Fly from Oaxaca (OAX) to Mexico City (MEX) then take the bus to Querétaro and then to San Miguel de Allende.

  • Duration5h 25m
  • Flight time1h 15m
  • Typical cost
    MX$2,655($125)
Operated by

Multiple operators

1 similiar route

We’ve grouped similar routes together, click the arrows to see the other options.

2
3 x bus
+

Bus

Take the bus to Balbuena Station then Santiago de Querétaro and then to San Miguel de Allende.

  • Duration9h 40m
  • Departsonce daily
  • Typical cost
    MX$880($42)
Operated by

Multiple bus operators

4 similiar routes

We’ve grouped similar routes together, click the arrows to see the other options.

3
car
+

Drive

Drive to San Miguel de Allende.

  • Duration7h 40m
  • Distance714km (444 miles)
Get turn-by-turn directions

Frequently asked questionsabout travel between Oaxaca and San Miguel de Allende

There are several options for getting from Oaxaca to San Miguel de Allende by plane, bus and car. The cheapest option is to take the bus which costs around MX$835 ($40) and will take around 11h 40m. If you need to get there more quickly, you can fly and then take the bus and arrive in approximately 5h 25m, though it is a bit more costly at approximately MX$2,655 ($125).

The distance between Oaxaca and San Miguel de Allende is around 668km (415 miles). In a direct line (as the crow flies), the distance is 623km (387 miles)

It takes around 5h 25m to get from Oaxaca and San Miguel de Allende by plane and bus. If you are travelling by car it will take around 7h 40m to drive there.

The quickest way to get from Oaxaca to San Miguel de Allende is to fly and then take the bus which takes around 5h 25m and will set you back approx MX$2,655 ($125).

The cheapest way to travel between Oaxaca and San Miguel de Allende, if you exclude driving, is to take the bus which will typically cost around MX$835 ($40) for a standard one-way ticket.

Train travel

There is no train service that runs between Oaxaca and San Miguel de Allende. We recommend that you fly from Oaxaca (OAX) to Mexico City (MEX) then take the bus to Querétaro and then to San Miguel de Allende. instead which will take 5h 25m.

Bus travel

Yes there is a bus that runs regularly from Oaxaca and San Miguel de Allende. It typically takes around 9h 40m and departs once daily.

There are no direct bus services that runs from Oaxaca to San Miguel de Allende. However, you can instead can take several connecting buses with changeovers in Balbuena Station, Salto Del Agua_1, Chabacano_1, Tasqueña and Santiago de Querétaro. These services run once daily and will take a minimum of 9h 40m.

Autobuses Titanium, ETN, Pegasso, Futura Select, ADO, Ómnibus Cristóbal Colón (OCC), Autobuses Unidos (AU), Primera Plus, Autobuses Fletes y Pasajes S.A. de C.V (Fypsa) and Coordinados run regular bus services between Oaxaca and San Miguel de Allende. Buses run once daily and take around 9h 40m on average but will vary depending on you book with.

Flights and Airlines

It doesn't look like you can fly directly from Oaxaca to San Miguel de Allende. We recommend that you fly from Oaxaca (OAX) to Mexico City (MEX) then take the bus to Querétaro and then to San Miguel de Allende. instead which will take 5h 25m.

The closest major airport to San Miguel de Allende is Querétaro International Airport (QRO) (QRO) which is approximately 66km (41 miles) from San Miguel de Allende. Del Bajío International Airport (BJX) (BJX) and General Francisco J. Mujica International Airport (MLM) (MLM) are also nearby and might be a better alternative airport depending on where you are flying from.

Drive yourself

Yes it is possible to drive from Oaxaca and San Miguel de Allende. The distance is around 714km (444 miles) by road and it will take around 7h 40m in normal traffic conditons.

If you don't have a car, the easiest way to get from Oaxaca to San Miguel de Allende is to fly and then take the bus which takes, on average, 5h 25m and will usually cost around MX$2,655 ($125).

How do I get from Oaxaca to San Miguel de Allende

Compare travel optionsbetween Oaxaca and San Miguel de Allende

Transport options from Oaxaca to San Miguel de Allende
Transport optionDurationCostFrequencyDistance
Plane and Bus + 1 similar
5h 25m
MX$2,655($125)
every 2 hours668km (415 miles)
Fly to San Luis Potosi (SLP), Bus5h 30m
MX$8,235($395)
once daily940km (584 miles)
Bus + 4 similar
9h 40m
MX$880($42)
once daily763km (474 miles)
Bus via Puebla Terminal CAPU10h 25m
MX$1,170($56)
5 times a day734km (456 miles)
Bus via Puebla CAPU11h 25m
MX$960($46)
every 2 hours733km (456 miles)
Bus via México Terminal TAPO11h 40m
MX$835($40)
every 2 hours757km (470 miles)
Bus via Asunción Nochixtlán12h 30m
MX$1,110($53)
hourly737km (458 miles)
Drive
7h 40m
MX$1,255($60)
on demand714km (444 miles)

Top Carriersoperating between Oaxaca and San Miguel de Allende

Bus companies

Airlines

Airports near San Miguel de Allende

The following major airports near San Miguel de Allende offer regular flights to various popular destinations within Mexico and internationally.

QRO
Querétaro International Airport (QRO)
International Airport
Distance
66km (41 miles) from San Miguel de Allende
BJX
Del Bajío International Airport (BJX)
International Airport
Distance
77km (48 miles) from San Miguel de Allende
MLM
General Francisco J. Mujica International Airport (MLM)
International Airport
Distance
123km (76 miles) from San Miguel de Allende