należał do Ruchu Społecznego AWS, od 2002 do 2004 był ostatnim przewodniczącym tej partii (po przemianowaniu jej na Ruch Społeczny). Był inicjatorem utworzenia Partii Centrum, którą założył w 2004 wspólnie ze Zbigniewem Religą. Pełnił początkowo funkcję jej pełnomocnika w województwie mazowieckim, jednak ostatecznie nie przystąpił do tego ugrupowania.
W 2005 został wybrany na senatora VI kadencji w okręgu warszawskim z ramienia Platformy Obywatelskiej. W wyborach parlamentarnych w 2007 po raz piąty uzyskał mandat senatorski (VII kadencji), otrzymując 547 479 głosów.
W grudniu 2009 zawiesił swoje członkostwo w klubie parlamentarnym PO w związku z zamierzeniami prokuratora co do przedstawienia mu zarzutów m.in. posiadania środków odurzających. Wobec nieuchylenia mu immunitetu postępowanie przygotowawcze w tej sprawie zostało umorzone. W wyborach parlamentarnych w 2011 nie ubiegał się o reelekcję.