Mahdzir memulai karier politiknya sebagai staf dan menjadi sekretaris politik Wakil Perdana Menteri MalaysiaAbdullah Ahmad Badawi pada 1999.[1] Pada 2004, ia terpilih sebagai anggota Majelis Legislatif Negara Bagian Kedah untuk daerah pemilihan Pedu. Pada Desember 2005, ia dilantik menjadi Menteri Besar Kedah setelah pendahulunya, Syed Razak Syed Zain Barakhbah, mengundurkan diri karena alasan kesehatan. Mahdzir menjabat posisi tersebut sejak Juli 2005.[2]
Masa jabatan Mahdzir sebagai Menteri Besar berakhir setelah koalisi Barisan Nasional negara bagian Kedah dikalahkan dalam pemilihan umum 2008 oleh koalisi Pakatan Rakyat (PR) yang dipimpin oleh Partai Islam Se-Malaysia (PAS).[3] Ia menjadi pemimpin oposisi Barisan Nasional di Majelis Legislatif Negara Bagian Kedah sebelum akhirnya melanjutkan karier di tingkat federal sebagai anggota parlemen pada pemilihan umum 2013, kemudian ia berhasil memenangkan kursi Padang Terap dengan mengalahkan kandidat dari PAS. Setelah pemilihan, ia dilantik ke dalam anggota kabinet sebagai Wakil Menteri Energi, Teknologi Hijau, dan Air di pemerintahan Perdana Menteri Najib Razak.[4] Pada perombakan kabinet tahun 2015, ia dipindahkan dari posisi sebelumnya sebagai wakil menteri menjadi Menteri Pendidikan Malaysia menggantikan Idris Jusoh yang dilantik sebagai Menteri Pendidikan Tinggi Malaysia.