You can use lossless compression, for example, in the TIFF container, which can support a number of different compression algorithms, most of them are lossless. PNG supports lossless compression as well. Please see:
Now, .NET classes do not support PNG compression parameters. Instead, you can consider using this library: http://optipng.sourceforge.net/
Unfortunately, this is a C library. You can use it in your .NET projects via P/Invoke or C++/CLI (mixed mode).
You might want to search more in hope to find something better.
So, you might be better off with TIFF, as .NET FCL offers a class for TIFF support:
] (and later versions of .NET).