Polityk, prawnik. Absolwent Wydziału Prawa i Administracji Uniwersytetu Warszawskiego. W 1978 r. uzyskał tytuł doktora nauk prawnych. Pracował jako adiunkt w Zakładzie Organizacji Międzynarodowych Instytutu Prawa Międzynarodowego Wydziału Prawa i Administracji UW. W 1980 r. został stypendystą Fundacji Fulbrighta na Uniwersytecie Columbia w Nowym Jorku.
Od 1971 r. był członkiem Polskiej Zjednoczonej Partii Robotniczej. Z jej ramienia w 1989 r. po raz pierwszy został posłem na Sejm. Mandat poselski sprawował przez pięć kadencji, do 2005 r. W latach 1990–91 był przewodniczącym Parlamentarnego Klubu Lewicy Demokratycznej. W 1999 r. wstąpił do Sojuszu Lewicy Demokratycznej.
Obejmował m.in. stanowiska wiceprezesa Rady Ministrów, ministra sprawiedliwości i prokuratora generalnego, premiera, ministra spraw zagranicznych i marszałka Sejmu. W latach 1996–97 przewodniczył Komitetowi Integracji Europejskiej przygotowującemu Polskę do negocjacji akcesyjnych z Unią Europejską. Dwukrotnie kandydował na urząd prezydenta.
Od 2007 r. jest niezależnym senatorem.
Odznaczony m.in. Orderem Białej Gwiazdy I klasy (Estonia), Krzyżem Wielkim Orderu „Za Zasługi dla Litwy”, Orderem Zasługi Republiki Francuskiej, Orderem Zasługi Republiki Greckiej.