Well, it's a bit of a mess if you're not familiar with it, but I'll try to explain it as simple as I can:
There are currently 2 virtual machines in the flash player. They're usually called AVM1 and AVM2 (AVM stands for ActionScript Virtual Machine).
AM1 runs the "old" byte code, and is scripted using Actionscript 1.0 & 2.0. AVM2 runs the "new" byte code, and is scripted using Actionscript 3.0. Not only the language changes, but also most of the player API (the display list is the most obvious example)
FP 9 and greater can run both old and new code, but not at the same time. (To some extent, you can execute AVM1 from an AMV2 "container", but it's quite problematic and not worth the hassle, IMO).
The Flash IDE version number used to match the player major release number. So, for Flash IDE 6 you had FP 6, for Flash IDE 7 you had FP 7 and so on. But, when FP 9 was released, the IDE was rebranded by Adobe as CS3. Still, think of CS3 as Flash IDE 9 and CS4 as Flash IDE 10 and the same logic still applies.
Using the IDE, you can compile a swf to any previous version. So, with CS3 you can export for player 9 and below, and you can choose to use the old VM (i.e. AS 1.0 or AS 2.0) or AVM2, (i.e. AS 3.0).
If you plan to do timeline stuff, the Flash IDE is your best choice. Since you want to code in AS 3.0, you will need at least CS3.
But, as you've been told, you don't need the Flash IDE to compile swf files. The Flex SDK (which is not the same as the Flex Framework) is freely available and comes with a compiler called mxmlc that you can use from other editors / IDEs (open source ones such as FlashDevelop, or comercial as FlexBuilder or FDT, two Eclipse plugins). You can also compile from the command line if feel so inclined.
Hope it makes some sense!