And as with most things, there really isn't a "best" approach. It all depends on what you are doing --
For instance, this site uses coldFusion (notice the .cfm in the address) -- and many content management type sites do use cold fusion -- I think that's because there are many many pre-made and ready to customize content management packages out there written in coldFusion -- that should tell you something --
Conversely, ASP is a great technology for providing other types of database access for things such as online reporting, e-commerce, and even ERP intranets -- it's very easy to get up to speed and develop in --
People like JSP because it works with JAVA and is platform independent. That same advantage provides a disadvantage, as well though, because of JDBC, which sits on top of ODBC -- so it suffers a little performance hit when it comes to database access -- there are more layers it has to communicate through --
See? There just isn't a "best" approach bar-none across the board. The answer is, "It depends". Just get good in something, and try to push that technology to its limits -- you'll do fine (employment and site design wise) no matter what you choose --
I'll second corporateRobot by saying that any and all Macromedia products are first rate -- you'll do yourself a favor by purchasing them. The great thing about their stuff, too, is the fact that you can go to their site and download fully functional trial versions of all their software to try before you buy -- it's a great way to decide before you sink the hundreds of dollars into them. Although they are worth every penny.
good luck!

Paul Prewett