Windows started supporting 16 bit grayscale from Win 7 (and Vista SP2).
See System.Windows.Media namespace (present in .NET 3 and above).
See here, especially the sample at the end:
http://msdn.microsoft.com/en-us/library/system.windows.media.pixelformats.aspx[
^]
Your friend is right in that human eye is more sensitive to Luminance as compared to Chrominance components. However, truncating Blue channel is not correct since eye is equally sensitive to R, G and B (well, actually, it is more sensitive to Green). The correct way is to convert RGB to YCbCr (you can also convert it to YUV). To compress data, you can scale down Chrominance components (Cb, Cr). Cb can scaled down by 50% and Cr to 25%. If you need only grayscale image, then discard the chrominance components completely.
Since you seem to have only grayscale and not the original color image, this conversion is not really applicable. If you want to fit 16 bit grayscale to 8 bit, you need to scale it down to 8 bits.