using System.Globalization;
public static void Main()
string myString = "2024-03-19T04:49:20Z";
var myDateTimeWrong = DateTime.Parse(myString);
Print(myDateTimeWrong, nameof(myDateTimeWrong));
var myDateTimeCorrect1 = DateTime.Parse(myString).ToUniversalTime();
Print(myDateTimeCorrect1, nameof(myDateTimeCorrect1));
var myDateTimeCorrect2 = DateTime.Parse(myString, CultureInfo.InvariantCulture, DateTimeStyles.RoundtripKind);
Print(myDateTimeCorrect2, nameof(myDateTimeCorrect2));
var myDateTimeCorrect3 = DateTime.SpecifyKind(DateTime.Parse(myString), DateTimeKind.Utc);
Print(myDateTimeCorrect3, nameof(myDateTimeCorrect3));
var myDateTimeCorrect4 = DateTime.ParseExact(myString, "yyyy-MM-ddTHH:mm:ssK", CultureInfo.InvariantCulture, DateTimeStyles.AssumeUniversal | DateTimeStyles.AdjustToUniversal);
Print(myDateTimeCorrect4, nameof(myDateTimeCorrect4));
private static void Print(DateTime myDateTime, string name)
Console.WriteLine(name + ":");
Console.WriteLine("Value = " + myDateTime);
Console.WriteLine("Kind = " + myDateTime.Kind);
Console.WriteLine("-----------");