Slowed Data reader in C#
There are several Comments that are unnecessary. You should get rid of them, since your code explains a few of those Comments.

Most C# coding standards suggest that you always use braces for if statements, so instead of this:


 if (BitConverter.IsLittleEndian)//Check for Endianess
        Array.Reverse(tempSize);//Reverse if necessary



you would format it like this:

if (BitConverter.IsLittleEndian)
{
    Array.Reverse(tempSize);
}