Oddly, despite the close proximity of Mitla, Yagul and Dainzú, which are all located along Highway 190, there are no tours available that can take you to all three. This tour, which includes Monte Albán, Mitla, and Dainzú, seems to be the closest thing.
To visit all of the Highway 190 sites together, you’ll either have to rent your own car or visit them by bus, which is indeed possible.
While Mitla is closed on Mondays, as of autumn 2023, it’s open from 10:00-16:00 on Tuesday-Saturday and from 10:00-14:00 and Sundays. Both Yagul and Dainzú, meanwhile, are open daily from 10:00-16:00.
Fortunately, visiting all three is much easier now compared to the time of my visit, when they were all operating on a drastically reduced schedule. Nevertheless, you’ll still be on a tight schedule and you’ll want to arrive at Mitla as soon as the ruins open.
Also be sure to check the official INAH sites for Mitla, Yagul and Dainzú to confirm the latest opening hours before your visit.
First, you’ll want to get to Mitla from Oaxaca. If you’re staying near the Zócalo, you can find buses for Mitla at the Central de Abasto station, also known as the ‘2nd Class Bus Station.’ (It’s also from here that you can catch a shared taxi to Atzompa on a different day.)
For those staying further north, you can find transport on Highway 190 a little bit east of the baseball stadium. While I’d read about public buses, I went to Mitla on a few different occasions and only ever saw shared taxis.
Wait around long enough and you should see a car with ‘Mitla’ written on the window. The standard price for the hour-long trip is $40 MXN per person.
Finished with Mitla, it’s time to head back west to visit Yagul. You can catch a coach bus at Mitla’s bus station located on 179, about 7 minutes on foot from the shared taxi drop-off point. Or you could take a shared taxi, though you may have to wait until it fills up.
As you board the bus, tell the driver that you want to get off at Yagul. After just about ten minutes into the ride, the driver will let you off, after which it’s a 2 km walk to the ruins.
After visiting Yagul, my plan was to return to the highway and simply wait for a westbound coach bus or shared taxi to Dainzú, another 20-minute ride.
But as I was walking back toward Highway 190, a Mexican family leaving Yagul around the same time slowed down and told me to get in their car. The friendly family was free for the rest of the day, and when I told them I planned to visit another archaeological site, they decided to visit with me.
Even had I not been lucky enough to meet this family, I think getting to Dainzú and then back to Oaxaca via local transport would’ve been fairly straightforward.
As mentioned, there’s yet another site called Lambityeco in between Yagul and Dainzú, though it’s been closed altogether for quite some time.
Another way to approach visiting all of these ruins would be to visit Mitla together with Hierve el Agua (either independently or with a tour) on one day before visiting Yagul and Dainzú on another.