The most efficient delimiter is no delimiter, use fixed width fields in a fixed order, then parse them back apart the same way.
Is this for the XBox? If yes, then it will be using UDP which is a packet based protocol, no need for a header with the length of the packet.
If this is for Windows, then it could be TCP or UDP. TCP is a streaming protocol, so you would need a header with the length stored so that you will know where the end of the packet is. The size in bytes to use for the length depends on how big your packets will be., if your packets are always going to be smaller than 256 bytes in length, then use a single byte, if they are going to be from zero to 65536 bytes in length, use two bytes, if it is going to be longer use three or four bytes.
It really depends on what you are doing, and how you are doing it, there is no right or wrong answer here, do what works for your game.