un chat con ajax si lo haces bien queda bien, para el chat no se necesita mucha transferencia de datos.
Ahora, si quieres hacer algo mas dinamico (mas que un chat) puedes usar flash + algun xml socket server.
En internet hay muchos xml socket server's que los puedes instalar en windows, linux,etc y con el cliente flash ya funciona a la perfeccion.
http://palabre.gavroche.net/
Ahi puedes encontrar un servidor xml que funciona para flash enfocado a juegos, pero funciona para cualquier aplicacion xml con sockets.