Flash is a vector animation software, originally designed to create animations for display on web pages. Vector graphics are ideal for the web because they are so lightweight.
Over the releases of new versions of Flash, Macromedia has made Flash more and more controllable via programming, where they have it positioned as a competitor to HTML to build interactive web sites and applications such as an e-commerce store. Macromedia argues that Flash is the way to go instead of HTML because of the following reasons:
All of these points are true, but they can be true for HTML pages as well (except for the vectors). I will address these points now:
Flash pages can be made to load faster, but most of the time, the way they are designed in the real world, they do not. That is not a Flash problem, it is more an issue of the Flash developers going nuts with fancy and heavy Flash movies.
HTML caches pages as well, once images are downloaded they are held in your browser's cache. The cached images are then used instead of downloading them from the server again.
With new technology like ASP.net and Java Server Faces, HTML now can react just like a ‘rich-client’ application. Even without these new tools, properly designed HTML for most dynamic sites can provide a good user experience.