You can't, not necessarily - it depends on what the file holds how much it can be compressed without losing data. Some file formats compress well: XLSX files for example are XML (largely text) based and tend to compress well, while AVI files are already compressed and there isn't a lot you can do.
Certainly, you can't guarantee to compress "any file" by any amount - and some files may get larger after compression as a result of the overheads of compression!
But if it can be done, then look at
SharpZipLib[
^] or similar.