Lesson 23 of 30
Working with Dates and Times
C# in Visual Studio 2026 — a hands-on guide for developers at every level.
DateTime
DateTime now = DateTime.Now;
DateTime today = DateTime.Today;
DateTime utc = DateTime.UtcNow;
Console.WriteLine(now.ToString("yyyy-MM-dd HH:mm:ss"));
Console.WriteLine(now.DayOfWeek); // e.g. Friday
Console.WriteLine(now.Year);
DateOnly and TimeOnly (C# 10+)
DateOnly date = new DateOnly(2026, 3, 15);
TimeOnly time = new TimeOnly(14, 30, 0);
Console.WriteLine(date); // 3/15/2026
Console.WriteLine(time); // 14:30
Arithmetic with Dates
DateTime start = new DateTime(2026, 1, 1);
DateTime end = DateTime.Today;
TimeSpan elapsed = end - start;
Console.WriteLine($"{elapsed.Days} days since New Year");
DateTime nextWeek = DateTime.Today.AddDays(7);
DateTime nextYear = DateTime.Today.AddYears(1);
Parsing and Formatting
DateTime dt = DateTime.Parse("2026-06-15");
DateTime dt2 = DateTime.ParseExact("15/06/2026", "dd/MM/yyyy", null);
Console.WriteLine(dt.ToString("MMMM d, yyyy")); // June 15, 2026
Console.WriteLine(dt.ToString("ddd dd MMM")); // Mon 15 Jun