W latach 1994–1995 pełnił urząd sekretarza parlamentarnego i zastępcy ministra spraw zagranicznych w randze podsekretarza stanu. W latach 1996–1997 był sekretarzem stanu i pierwszym zastępcą ministra spraw zagranicznych.
27 maja 1999 roku podczas posiedzenia V Komitetu 53. sesji Zgromadzenia Ogólnego Organizacji Narodów Zjednoczonych został wybrany na stanowisko wiceprzewodniczącego Komisji Międzynarodowej Służby Cywilnej Organizacji Narodów Zjednoczonych i 1 sierpnia 1999 roku objął to stanowisko.
Według materiałów zgromadzonych w archiwum Instytutu Pamięci Narodowej w latach 1960–1968 był tajnym współpracownikiem Służby Bezpieczeństwa Polskiej Rzeczypospolitej Ludowej o pseudonimach „Wysoki” i „Michał”.
Syn Henryka. Mąż Elżbiety Wyzner. Znał języki angielski, francuski i rosyjski.
Pochowany na Cmentarzu Wojskowym na Powązkach.