W latach 1989–1993 i 1997–2005 sprawował mandat posła Sejmu X, I, III, IV kadencji. Od 1995 do 1997 był senatorem III kadencji, wybranym w wyborach uzupełniających w województwie szczecińskim po rezygnacji Bodo Englinga. Pełnił funkcję ministra-członka Rady Ministrów ds. warunków życia na wsi w rządzie Tadeusza Mazowieckiego, ministra-członka Rady Ministrów ds. kontaktów politycznych w gabinecie Jana Olszewskiego i ministra rolnictwa w rządzie Jerzego Buzka.
Po krótkich związkach z Unią Demokratyczną (1990–1991) współorganizował Polskie Stronnictwo Ludowe „Solidarność”, przekształcone potem w Stronnictwo Ludowo-Chrześcijańskie, w którym pełnił funkcję przewodniczącego. W 1997 wraz z Aleksandrem Hallem doprowadził do powstania Stronnictwa Konserwatywno-Ludowego, z którym przystąpił do Akcji Wyborczej Solidarność. Do Sejmu IV kadencji wszedł z okręgu szczecińskiego z listy Platformy Obywatelskiej. W listopadzie 2001 wystąpił z jej klubu parlamentarnego i współtworzył koło poselskie SKL. W styczniu 2002 objął funkcję prezesa partii Stronnictwo Konserwatywno-Ludowe – Ruch Nowej Polski, kierował nią do samorozwiązania w grudniu 2003 (oficjalnie pozostawał prezesem jeszcze przez pewien okres, zanim partia została wyrejestrowana).