
This article was written in 2020. Versions, tools and recommendations may have changed since then. Newer posts are collected under .NET.
ISO 8601 is a general, international standard on how the complex representation of time stamps can be formulated in a general way - including the consideration of time formats, time zones and resolution.
Therefore, ISO 8601 is generally recommended for the exchange of time information, whether in databases, XML files or any other potential technology-neutral exchange format.
.NET does not have its own method for outputting ISO 8601, but it does have a standard-compliant option when formatting time objects: the o parameter.
To get a format like 2020-01-17T10:20:30.0000000Z you can this snippet:
1
2 DateTime dat = new DateTime(2020, 1, 17, 10, 20, 30, DateTimeKind.Utc);
3 Console.WriteLine("{0} ({1}) --> {0:o}", dat, dat.Kind);My brain is unfortunately filled with a lot of nonsense, so that I keep forgetting that “o” is the appropriate format option. Therefore I wrote a little extension:
1 public static string ToISO8601(this DateTimeOffset dt)
2 {
3 return dt.ToString("o");
4 }
5 public static string ToISO8601(this DateTime dt)
6 {
7 return dt.ToString("o");
8 }Finally you can just write
Console.WriteLine(dt.ToISO8601);Related articles

- 11 min read
Containerizing .NET in 2026 Without a Dockerfile
Most .NET Dockerfiles repeat the same five steps: restore, publish, select the matching Microsoft runtime image, copy the output and start …

- 12 min read
Problem Details in ASP.NET Core and .NET 11
builder.Services.AddProblemDetails() registers infrastructure. It does not create an error contract. An ASP.NET Core request can fail during …

- 11 min read
Resilience in .NET with Microsoft.Extensions.Resilience
Retries are the most visible resilience strategy and the easiest one to misuse. Repeating a failing call can recover from a short network …
Let's Work Together
Looking for an experienced Platform Architect or Engineer for your next project? Whether it's cloud migration, platform modernization or building new solutions from scratch - I'm here to help you succeed.
