Entre varios cargos públicos, ha sido diputado federal, local y dos veces senador por el estado de Puebla.
En 1985 fue postulado candidato del PRI y elegido diputado federal por el Distrito 12 de Puebla a la LIII Legislatura que culminó en 1988.
En las elecciones estales de 1989 fue elegido diputado a la LI Legislatura del Congreso del Estado de Puebla por el Distrito 2 local de 1990 a 1993, pero solo lo ejerció hasta el 15 de mayo de 1991 en que recibió licencia al cargo al ser postulado candidato del PRI a Senador por Puebla para el periodo que sería de 1991 a 1997.
[3] Ante lo cual, se reintegró al Senado y en 1996 fue secretario de coordinación regional del comité nacional del PRI en la cuarta circunscripción y al concluir su periodo como senador, de 1997 a 1998 fue delegado en Puebla de la Secretaría de Desarrollo Social (SEDESOL) y luego en 1999 de la Secretaría de Agricultura, Ganadería y Desarrollo Rural (SAGARPA).
Dejó el cargo en 2000 para ser candidato del PRI a Senador por Puebla en segunda fórmula, logrando el triunfo en la elección y resultando elegido junto con Rafael Cañedo Benítez para las legislaturas LVIII y LIX que culminaron en 2006.