Od 1945 do 1962 działał w Związku Harcerstwa Polskiego, w którym został podharcmistrzem. W latach 1957–1962 wchodził w skład rady uczelnianej Zrzeszenia Studentów Polskich. Od 1965 do 1972 był członkiem Związku Nauczycielstwa Polskiego. W 1976 uczestniczył w strajku głodowym na ART w związku z wydarzeniami czerwcowymi. W 1980 wstąpił do „Solidarności”, był przewodniczącym komisji zakładowej związku na ART. W 1982 został zwolniony z pracy z przyczyn politycznych. W okresie stanu wojennego został aresztowany i skazany na karę 2 lat pozbawienia wolności. Osadzono go w Zakładzie Karnym w Braniewie, wkrótce zwolniono z uwagi na stan zdrowia. W 1983 powrócił do pracy jako pracownik techniczny, rok później przywrócono go na stanowisku adiunkta, w 1998 objął stanowisko profesora.

Zasiadał w Senacie I kadencji; został wybrany z ramienia Komitetu Obywatelskiego w województwie olsztyńskim. Później był politycznie związany z Prawem i Sprawiedliwością, w 2005 wszedł do regionalnego honorowego komitetu poparcia Lecha Kaczyńskiego.