W 1956 ukończył pedagogikę na Katolickim Uniwersytecie Lubelskim. W 1969 uzyskał na Uniwersytecie Warszawskim stopień naukowy doktora, broniąc pracy Odpowiedzi autoidentyfikacyjne jako wskaźnik postaw wobec religii, przygotowanej pod kierunkiem Stefana Nowaka. Od połowy lat 50. był pracownikiem naukowym KUL oraz działaczem Klubu Inteligencji Katolickiej, w latach 1969–1971 zasiadał w zarządzie KIK. Przez wiele lat pełnił funkcję redaktora miesięcznika „Więź” oraz redaktora „Zeszytów Naukowych KUL”.

W październiku 1967 jako delegat Episkopatu Polski brał udział w III Światowym Kongresie Apostolstwa Świeckich w Rzymie. Od połowy lat 70. prowadził aktywną działalność opozycyjną. W 1976 sygnował List 101, zainicjowany przez przeciwników zmian w Konstytucji PRL. Autor artykułów w niezależnym piśmie „Spotkania”. W 1978 został jednym z członków założycieli i wykładowcą Towarzystwa Kursów Naukowych.

Był tajnym współpracownikiem SB jako TW „Romuald”. Miał być zarejestrowany do 1982. W latach 1982–1989 był rozpracowywany przez funkcjonariuszy bezpieki.