When the DataArrival event fires. If I didn't get the data, does it stay in the receive buffer?

I'm asking because I noticed that if I send over 8192 bytes of data, mutiple DataArrival Events fire, each 8192 bytes in size. I'm trying to decide whether I wait for all DataArrivals (concatenating everyting, SendComplete will send a packet for end concatenate/start processing) assuming the data stays in the receive buffer if I only Peek but not Get (my initial question), or if I'll Get and assemble the data in some other way.