public static void Main()
var datetime = DateTime.Now;
var datetime2 = DateTime.UtcNow.AddDays(10);
var timebetween = datetime - datetime2;
Console.WriteLine(timebetween.ToHMS());
public static class Extensions
public static string ToHMS(this TimeSpan time)
converted += time.Days == 0 ? "" : time.Days == 1 ? $"{time.Days} day " : $"{time.Days} days ";
converted += time.Hours == 0 ? "" : time.Hours == 1 ? $"{time.Hours} hour " : $"{time.Hours} hours ";
converted += time.Minutes == 0 ? "" : time.Seconds == 0 ? time.Minutes == 1 ? $"{time.Minutes} minute " : $"{time.Minutes} minutes " : time.Minutes == 1 ? $"{time.Minutes} minute and " : $"{time.Minutes} minutes and ";
converted += time.Seconds == 0 ? "" : time.Seconds == 1 ? $"{time.Seconds} second" : $"{time.Seconds} seconds";