Entre los cargos públicos desempeñados sobresalen los de Director del Instituto de Derechos Humanos de la Universidad Complutense de Madrid, Presidente de su Consejo Académico y Director del Anuario de Derechos Humanos. Es miembro del Instituto Internacional de Derechos Humanos de Estrasburgo.
Desde 1962 hasta 1977 ha sido abogado en ejercicio del Ilustre Colegio de Madrid.
Diputado al Congreso por Valladolid y por el Partido Socialista Obrero Español en la Legislatura Constituyente, así como en la 1 y II, fue elegido miembro de la Ponencia encargada de elaborar la Constitución vigente. Ha sido también portavoz del Grupo Socialista del Congreso. De manera activa ha participado en las leyes de desarrollo constitucional y ha presidido el Congreso de los Diputados durante la II Legislatura (1982-86).