The strings are already null terminated. Although the string itself doesn't contain a null character, a null character always follows the string in memory.
However, strings in .NET are unicode, so they are stored as UTF-16/UCS-2 in memory, and the server might expect a different encoding, usually an 8 bit encoding. Then you would have to encode the string into a byte array and place a zero byte at the end:
byte[] data = Encoding.Default.GetBytes(theString);
byte[] zdata = new byte[data.Length + 1];
data.CopyTo(zdata, 0);
(The zdata array is all filled with zeroes when creates, so you don't have to actually set the extra byte to zero.)