All of these points are true, but they can be true for HTML pages as well (except for the vectors.).
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 browsers 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.
So when should you use Flash?
Flash should be used when someone wants to create a presentation that is similar to a television commercial. This type of presentation is something where the user sits back and enjoys the show as the Flash movie delivers the message to the client with animation, sound and possibly video. Please do not get this confused with those ever-present ‘intro’ animations that still plague many Flash sites. Rather it’s about informative movies that the user can decide to view to learn about something like a product or a service.