When reading in a Binary file using System.IO.BinaryReader the byte order seems to be unaffected when using any of the multi-byte Read methods.
BinaryReader br = new BinaryReader(fs, System.Text.Encoding.BigEndianUnicode);
and
BinaryReader br = new BinaryReader(fs, System.Text.Encoding.Unicode);
are producing the same results for me.
This is causing me a lot of frustration because I have to reverse the byte order constantly while reading in data structures.
Screenshot - Big Endian Unicode
Screenshot - Little Endian Unicode
I've tested this on .NET 3 through 4.5