then for each string in the list, add 4 byte int of the string's length followed by the string bytes.
Or if your strings never contain a newline character aka CRLF aka Chr(10), then forget the lengths, just add a terminator to each string (except maybe the last one, although it'd be "cleaner" if you did) and concatenate them all together. At the other end, to reverse the process, convert the bytes back into a string, then
Regex.Split, which handily
will should also trim the trailing empty unterminated line.
The nice thing about doing it this way, rather than Serialization, is that the intermediate bytes, if they are in a file, are readable with pretty much any text editor (assuming you go with UTF-8 encoding).