I guess right off the bat I would exclude Java for a browser based application. Why? Unfortunately it requires a so-called JVM which may or may not be present.
AJAX on the other hand requires a 'modern' web browser, which I think in this day and age (FireFox) is a pretty safe bet.
And Flash requires the Flash runtime, which again, in this day and age, is also a pretty safe bet.
Exhibit #1: Check out Zimbra, which, if you believe the web site is built with AJAX. Very impressive. All I was able to see was the Flash demo (ironic isn't it?) but it's quite nice.