there is no way to make a video file smaller without compromising quality. DivX, Xvid, Wmv are all lossy compression codec algorithms and if you try to reduce file size you will lost some of its quality. You can reduce frame count or reduce pixel size of the movie to keep image clear, but movie will be bad quality again.
there is many different codecs but most of the new breed mpeg4 based codecs provide nearly same result. Divx goes commercial and Xvid is still free. It looks divx5 series a little more advanced. Try them both.
Zip is completely different approach. (I guess) it's Based on LZ algorithm which is lossless, and if you compress an avi movie with winzip you cannot play it until you unzip it and this process takes time. Most of the time winzip cannot reduce size of a compressed video file (Because of it already highly compressed). However there are lossless codecs (based on lzw *like zip* algorithm) out there but they produce *very* big files with ultimate qualty.