W drugiej połowie lat 70. był współpracownikiem Komitetu Obrony Robotników i Komitetu Samoobrony Społecznej „KOR” oraz wykładowcą Towarzystwa Kursów Naukowych. W 1980 został przewodniczącym komisji zakładowej „Solidarności” w WSP w Rzeszowie, a następnie współpracował z podziemnymi strukturami związku. Był członkiem Komitetu Obywatelskiego. Wchodził także w skład zarządu Klubu Inteligencji Katolickiej w Rzeszowie. Od 1991 do 1993 sprawował mandat senatora II kadencji, wybranego z lokalnego komitetu Regionalne Forum Wyborcze. Zasiadał w klubie parlamentarnym Konwencja Polska. W wyborach parlamentarnych w 1993 bez powodzenia ubiegał się o reelekcję, startując w województwie rzeszowskim z ramienia KW „Zjednoczenie Polskie”. W latach 1994–1998 był wicedyrektorem Radia Rzeszów.
W 1999 został powołany w skład Kolegium Instytutu Pamięci Narodowej, w 2007 z inicjatywy posłów PiS wybrany na drugą kadencję. Zakończył pełnienie tej funkcji w 2011 w związku z likwidacją Kolegium IPN. Kolejny raz został członkiem tego ciała po jego ponownym utworzeniu w 2016, a w 2023 został wybrany na następną kadencję. Obejmował funkcję przewodniczącego tego gremium. Został członkiem rady programowej Fundacji im. Janusza Kurtyki.