W 1989 brał udział w obradach plenarnych Okrągłego Stołu. W tym samym roku nie wziął udziału w wyborach do Sejmu kontraktowego. W rządzie Tadeusza Mazowieckiego od września 1989 do października 1990 był ministrem bez teki, powierzono mu sprawy współpracy z organizacjami politycznymi i stowarzyszeniami. Przewodniczył Forum Prawicy Demokratycznej (1990–1991), działał następnie jako wiceprzewodniczący Unii Demokratycznej (1991–1992) i przewodniczący Partii Konserwatywnej (1992–1997). W 1993 współtworzył Grupę Windsor, ponadpartyjne, krajowe i zagraniczne lobby na rzecz prokapitalistycznych reform w Polsce. W 1997 był współzałożycielem Stronnictwa Konserwatywno-Ludowego.
Sprawował mandat posła na Sejm w latach 1991–1993 (z ramienia Unii Demokratycznej) i 1997–2001 (z ramienia Akcji Wyborczej Solidarność). W wyborach parlamentarnych w 1993 bez powodzenia ubiegał się o reelekcję z listy Katolickiego Komitetu Wyborczego „Ojczyzna”. Po porażce w wyborach parlamentarnych w 2001 (z listy Platformy Obywatelskiej) zrezygnował z czynnego udziału w polityce, skupiając się na pracy naukowej. W 2004 odmówił przyjęcia mandatu poselskiego przynależnego mu po wybranym do Parlamentu Europejskiego pośle PO. W kolejnych latach był m.in.