W latach 1990–1998 był członkiem rady gminy Zamość, od 1994 pełnił funkcję jej przewodniczącego. W wyborach parlamentarnych w 1993 bez powodzenia ubiegał się o mandat poselski z listy Polskiego Stronnictwa Ludowego – Porozumienia Ludowego. Od 1997 do 2001 sprawował mandat senatora IV kadencji z ramienia Ruchu Odbudowy Polski z województwa zamojskiego. W 2001 bez powodzenia ubiegał się o reelekcję z ramienia Bloku Senat 2001. W latach 2002–2005 był radnym sejmiku lubelskiego z ramienia Ligi Polskich Rodzin Od 2 grudnia 2002 do 11 stycznia 2003 wchodził w skład zarządu województwa (uchwała o powołaniu zarządu województwa z jego udziałem została jednak uchylona decyzją wojewody). Następnie wstąpił do Prawa i Sprawiedliwości, zostając członkiem zarządu okręgowego tej partii.
W wyborach parlamentarnych w 2005 został wybrany na senatora VI kadencji z ramienia PiS w okręgu chełmskim. Objął funkcję przewodniczącego Komisji Rolnictwa i Ochrony Środowiska. W wyborach parlamentarnych w 2007 po raz trzeci uzyskał mandat senatorski, otrzymując 100 748 głosów.