DateTime.Subtract Method (TimeSpan)
Note 

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience. 
Subtracts the specified duration from this instance.
Assembly: mscorlib (in mscorlib.dll)
Parameters
 value

Type:
System.TimeSpan
The time interval to subtract.
Return Value
Type: System.DateTimeAn object that is equal to the date and time represented by this instance minus the time interval represented by value.
Exception  Condition 

ArgumentOutOfRangeException 
The Subtract(TimeSpan) method returns the date that is a specified time interval difference from the current instance. To determine the time interval between two dates, call the Subtract(DateTime) method. To subtract a particular time interval from the current instance, call the method that adds that time interval to the current date, and supply a negative value as the method argument. For example, to subtract two months from the current date, call the AddMonths(Int32) method with a value of 2.
This method does not change the value of this DateTime. Instead, it returns a new DateTime whose value is the result of this operation.
Ordinarily, the DateTime.Subtract(TimeSpan) method subtracts a TimeSpan object that represents a positive time span and returns a DateTime value that is earlier than the date and time of the current instance. However, if the TimeSpan object represents a negative time span, the DateTime.Subtract(TimeSpan) method returns a DateTime value that is later than the date and time of the current instance.
The DateTime.Subtract(TimeSpan) method allows you to subtract a time interval that consists of more than one unit of time (such as a given number of hours and a given number of minutes). To subtract a single unit of time (such as years, months, or days) from the DateTime instance, you can pass a negative numeric value as a parameter to any of the following methods:
AddYears, to subtract a specific number of years from the current date and time instance.
AddMonths, to subtract a specific number of months from the current date and time instance.
AddDays, to subtract a specific number of days from the current date and time instance.
AddHours, to subtract a specific number of hours from the current date and time instance.
AddMinutes, to subtract a specific number of minutes from the current date and time instance.
AddSeconds, to subtract a specific number of seconds from the current date and time instance.
AddMilliseconds, to subtract a specific number of milliseconds from the current date and time instance.
AddTicks, to subtract a specific number of ticks from the current date and time instance.
The following example demonstrates the Subtract method and the subtraction operator.
System.DateTime date1 = new System.DateTime(1996, 6, 3, 22, 15, 0); System.DateTime date2 = new System.DateTime(1996, 12, 6, 13, 2, 0); System.DateTime date3 = new System.DateTime(1996, 10, 12, 8, 42, 0); // diff1 gets 185 days, 14 hours, and 47 minutes. System.TimeSpan diff1 = date2.Subtract(date1); // date4 gets 4/9/1996 5:55:00 PM. System.DateTime date4 = date3.Subtract(diff1); // diff2 gets 55 days 4 hours and 20 minutes. System.TimeSpan diff2 = date2  date3; // date5 gets 4/9/1996 5:55:00 PM. System.DateTime date5 = date1  diff2;
Available since 8
.NET Framework
Available since 1.1
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1