1935년 10월 5일, 부천군에서 태어났다. 중동중학교와 중동고등학교를 졸업하고 성균관대학교 경제학과에 입학했다.
제7대 국회의원 선거를 앞두고 민주당 소속으로 시흥군·부천군·옹진군 선거구에 출마했으나 2.28%의 득표율로 3위로 낙선했다.
제12대 국회의원 선거를 앞두고 신한민주당 소속으로 부천시·김포군·강화군 선거구에 출마해 당선되면서 국회에 입성했다. 이후 통일민주당에 합류했지만 평화민주당이 창당할 때 탈당하고 평화민주당에 입당했다.[1] 제13대 국회의원 선거를 앞두고 평화민주당 소속으로 부천시 중구 선거구에 출마했으나 32.67%의 득표율로 2위로 낙선했다.
제14대 국회의원 선거를 앞두고 민주당 소속으로 부천시 중구 갑 선거구에 출마했으며 50.82%의 득표율을 기록하면서 당선, 재선 국회의원이 되었다. 이후 제15,16대 국회의원으로 연속해 당선되면서 4선 국회의원이 되었다.
2001년 1월, 새천년민주당의 최고위원으로 지명되었다. 2001년8월 16일, 충청북도 청주시에서 열린 국정홍보대회에서 "친일파는 삼대가 떵떵대는 데 반해 독립운동가는 삼대가 고생한다는 말이 있는데, 이회창씨는 일제강점기에 검찰서기를 지낸 아버지가 부끄러워서 어제 광복절 행사에 못 나온 모양이다"라고 광복절 행사에 불참한 한나라당 총재 이회창을 비난했다. 이에 분노한 이회창은 9월에 예정된 여야영수회담 불참을 선언하고,[2] 그는 영수회담 불발의 책임을 지고 최고위원직을 사퇴한다.[3] 하지만 그는 2002년16대 대통령 선거를 앞두고 이회창 지지 및 노무현의 대통령후보 사퇴를 요구하면서 자유민주연합에 입당하고, 2008년 2월 자유선진당 창당 당시 발기인으로 참가하였으며 제18대 총선에서는 자유선진당 후보로 부천시 원미구 갑 선거구에 출마하였다. 하지만 7.52%의 득표율을 기록하면서 3위로 낙선했다.
2010년5월 24일이윤수 전 의원 등 '국가의 미래를 걱정하는 구 민주당 소속 전 국회의원' 17명을 비롯한 원로 정치인 23명과 함께 한나라당 경기도당에서 기자회견을 열고, 경기도지사 후보 김문수를 지지하였다.[4]