
DateTime.Today returns just the day—without the time. This is different from DateTime.Now, which returns as much information as it can. The Today property returns a DateTime struct with the hour, minutes and seconds set to zero.
This program acquires the current day with Today and the current time with Now. The program was executed in the early afternoon, but Today is still set to midnight. This is because Today is the same as Now but with all values set to zero after the date.
This C# example shows how to use the DateTime.Today property to get the current day.
Program that uses DateTime.Today [C#]
using System;
class Program
{
static void Main()
{
DateTime today = DateTime.Today;
DateTime now = DateTime.Now;
Console.WriteLine(today);
Console.WriteLine(now);
}
}
Output
2/25/2011 12:00:00 AM
2/25/2011 1:29:21 PM
Today is useful if you need to use a range of DateTimes starting on the current day. You could determine whether a piece of data was updated today or not by testing it against DateTime.Today.

We looked at the DateTime.Today property, which has an important difference from DateTime.Now: it contains no values other than the current day. This makes it useful for sorting and filtering tasks, or when you simply don't need the time.
DateTime.Now Gets Current Time Time Representations