Bulunduğu bölgenin engebeli bir araziye sahip olması nedeniyle yakın bir döneme kadar Malatya ulaşımı zor olan bir il olarak bilinmekteydi. Ancak günümüzde Malatya’ya hem kara hem hava hem de demiryolları ile ulaşmak gayet rahat bir hale gelmiştir.
Türkiye’nin birçok önemli kent merkezinden, Malatya’nın il merkezinin 5 kilometre uzağında bulunan Şehirlerarası Otobüs Terminali’ne seferler düzenlenmektedir. Şehirlerarası Otobüs Terminali’nden Malatya il merkezine gitmek için belediye otobüsü, minibüs ve taksi gibi imkânlar bulunmaktadır.
Önemli kara yolları üzerinde bulunan Malatya’ya İstanbul üzerinden sırasıyla Ankara, Kayseri rotası izlenerek ulaşılabilir. İzmir üzerinden Malatya’ya ulaşmak için ise Afyonkarahisar, Konya, Kayseri rotasının izlenmesi gerekmektedir. Malatya, D300 kara yolu ile Kayseri’ye, D850 kara yolu ile Adıyaman’a, D875 kara yolu ile Sivas’a ve D330 kara yolu ile ise de Kahramanmaraş’a bağlanmaktadır.
Şehrin havayolu ulaşımı, Malatya merkeze 30 kilometre uzaklıkta Akçadağ ilçesinde bulunan Erhaç Havalimanı üzerinden yapılmaktadır. Erhaç Havalimanı’na yılın her dönemi İstanbul ve Ankara üzerinden çeşitli özel hava yolu firmalarının günlük tarifeli seferleri düzenlenmektedir. Yaz sezonlarında İzmir ve Antalya’ya uçuşların da bulunduğu Erhaç Havalimanı’nda yurtdışı terminali de bulunmaktadır. Yurtdışı terminalinden belirli sezonlarda başta Almanya’nın Frankfurt şehri olmak üzere bazı Avrupa şehirlerinden de doğrudan ulaşım mümkündür. Havalimanından şehir merkezine ulaşım için ise Havaş’ın servisleri bulunmaktadır. Yaklaşık 45 dakika süren yolculuğun ücreti 2017 sonu itibariyle 11 TL’dir.
Ek olarak Malatya’ya çevre illerden ve Ankara’dan tren ile ulaşmak da mümkündür. Güney Kurtalan Ekspresi, Van Gölü Ekspresi ve Fırat Ekspresi rotası üzerinde bulunan Malatya’ya ilgili rotalar üzerinden trenle de ulaşılabilir.