Using FDS would be the far easiest way to implement a chat
application.
Theoretically you could implement a chat application without
FDS by having each client poll the server for messages for new
messages for that client using HTTPService or WebService.
You can also do "poor man's data push" using a long-lasting
HTTP request - in this pattern each client posts an HTTP request
that it doesn't expect and immediate response to - when the server
has a message for the client is sends the response (perhaps a long
time later). In the client's event handler for the response the
client posts another request (so that the server has a means of
"pushing" data to the client). This is how Blackberry-style email
works in Windows Mobile (in the absence of a proper data push
protocol).
Sean
Neville's Introduction to the Flex Message Service has a good
example of how to write a chat application in FDS.
Graeme Harker's Flex.NET
Blog