W 1997 został wybrany na posła do Sejmu III kadencji z listy Akcji Wyborczej Solidarność. Był członkiem rady politycznej Chrześcijańskiej Demokracji III RP. Potem przystąpił do Stronnictwa Konserwatywno-Ludowego, w 2001 zasiadał w klubie parlamentarnym tej partii. Do Sejmu IV i V kadencji uzyskiwał mandat z listy Platformy Obywatelskiej w okręgu kieleckim. W parlamencie zasiadał m.in. w Komisji Administracji i Spraw Wewnętrznych oraz Komisji do spraw Służb Specjalnych. W lipcu 2004 został wybrany do komisji śledczej powołanej do zbadania tzw. afery Orlenu. Był posłem, który złożył wniosek o przesłuchanie przed tą komisją w charakterze świadka Anny Jaruckiej, byłej asystentki Włodzimierza Cimoszewicza (wówczas kandydata w wyborach prezydenckich), poznanej za pośrednictwem Wojciecha Brochwicza.
W wyborach parlamentarnych w 2007 został posłem VI kadencji, otrzymując 33 229 głosów. Do sierpnia 2008 przewodniczył zarządowi PO w województwie świętokrzyskim. W 2009 bez powodzenia kandydował do Parlamentu Europejskiego w okręgu małopolsko-świętokrzyskim. W wyborach w 2011 z powodzeniem ubiegał się o reelekcję. Uzyskał wówczas 14 202 głosy.