It’s not always possible …
http://www.gskinner.com/blog/archives/2008/04/failure_to_unlo.html
*Flash Player 9 Bug*
Flash Player 9 has a critical bug that prevents unloading loaded SWFs that have any active ENTER_FRAME or TIMER event listeners. This occurs regardless of whether these listeners are all within the scope of the loaded SWF, or even if they all use weak references. This also affect timeline code written in Flash authoring - *if you have any code in your timeline, it will not be possible to unload that SWF.*