Daerah Istimewa Yogyakarta memiliki beberapa stasiun kereta api di wilayahnya, diantaranya adalah Stasiun Tugu Yogyakarta, Stasiun Lempuyangan, Stasiun Maguwo, Stasiun Patukan, Stasiun Rewulu, Stasiun Sentolo, dan Stasiun Wates. Berikut profil singkat dari masing-masing stasiun tersebut,
- Stasiun Tugu Yogyakarta (YK) terletak di kecamatan Gedongtengen dan beroperasi di bawah pengawasan PT KAI Daop 6. Stasiun ini terletak di ketinggian +113 mdpl, dan berperan sebagai stasiun terbesar di Yogyakarta. Stasiun ini melayani pemberangkatan dan kedatangan kereta api kelas eksekutif dan bisnis.
- Stasiun Lempuyangan (LPN) terletak di kecamatan Danurejan, ketinggian +114 mdpl, dan hanya berjarak 1 km di sebelah timur Stasiun Tugu. Stasiun ini melayani pemberhentian semua kereta api kelas ekonomi yang melintasi Yogyakarta. Untuk reservasi tiket di stasiun Lempuyangan dibuka dari jam 07.30 pagi hingga pukul 00.00 WIB dini hari.
- Stasiun Maguwo (MGW) berada di ketinggian +118 mdpl, tepatnya di di Desa Maguwoharjo, Kecamatan Depok, Kabupaten Sleman, Yogyakarta. Stasiun ini menjadi penghubung jalur ganda Kutoarjo-Solo, dan menjadi stasiun KA aktif di timur di Yogyakarta. Sebelumnya ada stasiun Kalasan yang terletak di timur Stasiun Maguwo, namun kini stasiun tersebut sudah tidak difungsikan lagi.
Stasiun Maguwo telah dilengkapi dengan jalur rel bawah tanah yang menghubungkannya dengan Bandara Adisucipto. Jalur ini otomatis juga menjadi titik sistem transportasi terpadu di Yogyakarta. Untuk keperluan ini, posisi stasiun telah digeser sejauh kurang lebih 300 m ke arah timur dari titik asalnya.
- Stasiun Patukan (PTN) merupakan stasiun kereta api paling barat di Yogyakarta yang terletak di Desa Ambarketawang, Kecamatan Gamping, Kabupaten Sleman, DIY. Berada di ketinggian +88 mdpl, stasiun Patukan memiliki 5 jalur kereta api.
- Stasiun Rewulu (RWL) berposisi di Argomulyo, Sedayu, Bantul, Yogyakarta. Sama dengan stasiun Patukan, Stasiun Rewulu juga dibangun pada ketinggian +88 mdpl dan beroperasi pada 5 jalur rel KA.
- Stasiun Sentolo (STL) merupakan stasiun KA yang berlokasi di Sentolo, Kulon Progo, Yogyakarta. Stasiun ini berada pada ketinggian +54 mdpl dan terletak tepat di pinggir jalan raya Wates-Yogyakarta. Dahulu, ada stasiun Kalimenur di sisi selatan dan stasiun Sedayu di sisi timur Stasiun Setolo. Kedua stasiun ini masing-masing sudah tidak beroperasi sejak tahun 1980 and 1990-an.
- Satu lagi stasiun di Kulonprogo, yaitu Stasiun Wates (WT). Terletak pada ketinggian +18 mdpl di dekat Alun-alun wates, stasiun wates memiliki 5 jalur KA. Stasiun ini menjadi andalan masyarakat Kulonprogo karena menjadi satu-satunya stasiun yang melayani pemberhentian kereta api ekonomi, bisnis, dan campuran di Kulonprogo.