WinRAR and WinACE are supposedly marginally better at compressing media files, but as Dakota81 says, video files are already heavily compressed and so further compression is negligible. If you're unfamiliar with compression then check out this article:
Consider compressing the original video using a modern technology such as MPEG4 or DivX5. You could reduce the file size of a 20Mb MPEG1/2 video clip down to just 4Mb or even less. Also consider compressing the audio to just what you need. If there's just speech in the video clip then you can reduce the audio bitrate to 64kbps or even less, and still keep much of the important quality. Do look into the licensing of MPEG4 and DivX5, as well as the % of your users who will have the right codecs installed so that they can play your video clip correctly.
Dakota81 has recommended a very good open source tool, VirtualDub, for video compression. It's free and easy to use.
Depending on what you're trying to achieve, have you considered streaming the video? It can save both you and the user lots of bandwidth if they end up stopping the video before the end.
If much of your video is repeated, you could consider breaking it into pieces using VirtualDub and importing the unique fragments into Macromedia Flash where you can play and repeat them where necessary. The more repetition you have, the more file size you'll save by re-using the video fragments.
May