Funkcję posła po raz pierwszy pełnił z puli Zjednoczonego Stronnictwa Ludowego w latach 1989–1991 w Sejmie kontraktowym, po przekształceniu ZSL należał do Polskiego Stronnictwa Ludowego „Odrodzenie” i następnie do Polskiego Stronnictwa Ludowego. 23 maja 1991 z rekomendacji PSL bez powodzenia kandydował na prezesa Najwyższej Izby Kontroli (w głosowaniu sejmowym wybrany został Walerian Pańko). W tym samym roku nie odnowił również mandatu poselskiego. Od 1991 do 1993 był członkiem Trybunału Stanu. W wyborach w 1997 ponownie uzyskał mandat poselski, reprezentując PSL. Z powodzeniem ubiegał się o reelekcję w 2001 i 2005. W wyborach parlamentarnych w 2007 po raz piąty został posłem, otrzymując w okręgu tarnowskim 13 365 głosów.

Od lipca 2007 do marca 2009 wchodził w skład Rady Służby Publicznej, w kwietniu 2009 został powołany na członka Rady Służby Cywilnej. W VI, podobnie jak w V kadencji Sejmu, pełnił funkcję wiceprzewodniczącego Polsko-Tajwańskiego Zespołu Parlamentarnego. Był także prezesem zarządu oddziału wojewódzkiego Związku Ochotniczych Straży Pożarnych Rzeczypospolitej Polskiej.