How fast is the GPS connection? 9600, 19200...
I honestly must've overlooked that fact in my testing. I guess by default it was connecting at 9600. I thought for some reason that number was how fast the serial unit updates through the com port (not thinking it could be set via the com port). The unit itself states 4800 - 115200 (1hz - 5hz).

You need to know the protocol that your serial device use
Does this just make it 'seamless' to do. It can be done efficiently without knowing the protocol right?

The buffer is the most versatile and efficient way to go.
As with the above, does the buffer only really work if we know the protocol and the byte amounts? Or is this something we can set and keep checking the incoming and be more efficient than using strings/etc? Remember, i've yet to work with bytes, but started reading up on them...

dbasnett - thanks for the example. Some threading terms I've not yet heard of or used (ie: Threading.Monitor). Doing some research on them. The example seems like how I imagined it should work, maybe I'll give something to that effect a try.

The gps unit is a gm-2 iblue (apparently disco'd for a while). I've had it about 2 years and just started toying with it. Cheers!