The best way to reach Orizaba is by bus, and the city is relatively well-connected. From Mexico City, the journey lasts about 4 hours and from Puebla about two and a half. The city of Tehuacán in Puebla state, meanwhile, is just two hours away.
From within Veracruz, the journey from Veracruz city is about three hours and from the state capital of Xalapa it’s over four. Orizaba happens to be just about twenty minutes away from another popular colonial city called Cordoba.
While Orizaba is relatively close to Oaxaca, the buses from Oaxaca were only departing late at night during my visit.
In my case, I came from Puebla. As mentioned, the journey was supposed to take less than three hours. But due to some type of accident on the highway, it ended up taking us eight! (While a very frustrating situation, I was quite impressed by the patience demonstrated by the other passengers.)
I don’t know how common such traffic jams are on that particular highway, but you might want to mentally prepare yourself for the worst.
Fortunately, the main Orizaba bus station is an easy walk to the historical center.