Buffer.BlockCopy()
's last argument specifies the number of bytes to copy rather than the number of elements in the source buffer. Specifying incorrect buffer length may result in partial copying and or data loss.
Buffer.BlockCopy(src, 0, dst, 0, src.Length);
Buffer.BlockCopy(src, 0, dst, 0, Buffer.ByteLength(src));