If you are simply asking which gives the smallest archive file - then I agree with Ivan that 7Zip is usually the answer. However, when I did some sample testing I found that 7Zip was very bad on “compressed” formats such as Jpeg !!
Another consideration may be speed - 7Zip is by far the slowest compression method.
On “normal” filetypes:-
Cab gives the next best compression, usually much faster than 7Zip.
Tar with Bzip2 gives the next best compression, usually faster than Cab.
Note: in my testing 821 Wav files 15,281,041
Bzip2 - about 8 minutes (11.5MB)
Cab - about 25 minutes (11.9MB)
7Zip - nearly 2 hours (11MB)
PS for the Jpegs I tested 10 Files (12,600,516)
cab 7 minutes 12,564,597
bh 3 minutes 12,588,570
bz2 5 minutes 12,615,759 !.expansion.!
7z 45 minutes 12,664,029 !.expansion.!
I would recommend that you do a sample of your own files and judge for yourself.