An .swf file is the already compressed output from Flash*. It's the file you put in a web page.
Flash the authoring tool from Adobe, will also save an .fla file. This is its own working file, and it has no use outside it. The .fla file is much bigger than the companion .swf file.
*A few other applications can make .swf files too (actually, it's an open file format). What characterizes an .swf is it's very efficient compression. I.e. there's nothing more to compress, really.
If you find an .swf is 'too big' somehow, it must be because it contains a lot of media. It can be pictures (a whole slideshow, perhaps), audio and even video. If you have a collection of jpg-pictures for a rather long slideshow that amounts to say 5 mB, the resulting .swf for the slidewhow will be around 5 mB too - or even less!
Please observe that .swf can be a 'streaming' file. Also known as 'progressive download'. It means that it can start it's own playback before the entire file has downloaded. If you are worried about long download times for a user due to the large total file size, streaming (or 'progressive download') which is built into the .swf-format, will help you out. This also depends on how your .swf is built (authored) however.
If your .swf contains too much media, you can only edit it if you have its companion .fla file (for Flash the authoring tool, or a similar project file for other apps). The .swf file itself is un-editable; it's a baked cake so to speak.
Not everything that can be counted counts, and not everything that counts can be counted.