You might be testing the speed of disp() rather than the speed of the tcp.
You would probably also be slightly faster to use fgetl() than fgets(). But faster still would be fread(t, t.BytesAvailable) which should be equivalent to what you have because you appear to be organizing your data as binary rather than as line oriented (if you had wanted it to be line oriented you would have configured a Terminator property)