That structure includes UTC times and local offset to UTC
Choosing Between DateTime, DateTimeOffset, TimeSpan, and TimeZoneInfo @ MSDN
Storage size: 10 bytes, fixed is the default with the default of 100ns fractional second precision
"If you ever need to modify a previously recorded DateTimeOffset - you don't have enough information in the offset alone to ensure that the new offset is still relevant for the user. You must also store a timezone identifier (think - I need the name of that camera so I can take a new picture even if the position has changed).
It should also be pointed out that Noda Time has a representation called ZonedDateTime for this, while the .Net base class library does not have anything similar. You would need to store both a DateTimeOffset and a TimeZoneInfo.Id value."