Strings are serialized as follows:
01 to indicate type string
Four bytes (eight hex chars) to indicate length of string: 0000000c=0x0c=12 in your case
The string represented by its ASCII values: 48656c6c6f20576f726c6421 in your case
The 05 in the beginning is a prefix which is only used by the PACK Michelson instruction which the Bytes.pack function in ...