Start reading here: http://en.wikipedia.org/wiki/Data_compression
] - it provides a good overview. The follow the links - they go to more involved explanations of the various methods.
Then when you have decided what kind of compression you need, you can start implementing them.
But don't expect this to be a simple process. WinRar and WinZip pout a lot of research into this, and many files are already compressed, so significant gains becomes very difficult to achieve.
Alternatively, you could use zSharpLib: http://www.icsharpcode.net/OpenSource/SharpZipLib/