PNG es un reemplazo del 100% para los archivos GIF y es compatible con todos los navegadores web que pueda encontrar.
Hay muy, muy pocas situaciones en las que GIF sería preferible. La más importante es la animación: el estándar GIF89a es compatible con la animación, y prácticamente todos los navegadores lo admiten, pero el formato antiguo PNG no lo hace; para eso necesitarás usar MNG, que tiene compatibilidad limitada con el navegador.
Prácticamente todos los navegadores admiten transparencia de un bit en archivos PNG (el tipo de transparencia que ofrece el formato GIF). Existe una falta de soporte en IE6 para la transparencia completa de 8 bits de PNG, pero eso se puede corregir en la mayoría de las situaciones con un poco de magia de CSS.
Si sus archivos PNG son más grandes que los archivos GIF equivalentes, es casi seguro que su imagen de origen tenga más de 256 colores. Los archivos GIF están indexados a una paleta máxima de 256 colores, mientras que los archivos PNG en la mayoría de los programas gráficos se guardan de forma predeterminada en un formato sin pérdida de 24 bits. Si el tamaño del archivo es más importante que los colores exactos, guarde el archivo como PNG indexado de 8 bits y debería ser equivalente a GIF o mejor.
Es posible "hackear" un archivo GIF para tener más de 256 colores utilizando una combinación de cuadros de animación con marcas de no-reemplazar y múltiples paletas, pero este enfoque ha sido prácticamente olvidado desde el advenimiento de PNG .
Útil: http://stackoverflow.com/q/2336522/199700 –