一方、2月28日または3月1日を表すDateTime・DateTimeOffsetに対してAddYearsメソッドを用いる場合は、その年がうるう年となるか否かに関わらず、結果は2月28日または3月1日となります。

DateTime/DateTimeOffset.AddYearsで2月28日・3月1日のn年前・n年後の日付を求める場合の動作
using System;

class Sample {
  static void Main()
  {
    var baseDate = new DateTime(2012, 2, 28);

    Console.WriteLine("{0} + 1 years = {1}", baseDate, baseDate.AddYears(+1));
    Console.WriteLine("{0} - 1 years = {1}", baseDate, baseDate.AddYears(-1));
    Console.WriteLine("{0} + 4 years = {1}", baseDate, baseDate.AddYears(+4));
    Console.WriteLine("{0} - 4 years = {1}", baseDate, baseDate.AddYears(-4));
    Console.WriteLine();

    baseDate = new DateTime(2016, 3, 1);

    Console.WriteLine("{0} + 1 years = {1}", baseDate, baseDate.AddYears(+1));
    Console.WriteLine("{0} - 1 years = {1}", baseDate, baseDate.AddYears(-1));
    Console.WriteLine("{0} + 4 years = {1}", baseDate, baseDate.AddYears(+4));
    Console.WriteLine("{0} - 4 years = {1}", baseDate, baseDate.AddYears(-4));
  }
}
実行結果
2012/02/28 0:00:00 + 1 years = 2013/02/28 0:00:00
2012/02/28 0:00:00 - 1 years = 2011/02/28 0:00:00
2012/02/28 0:00:00 + 4 years = 2016/02/28 0:00:00
2012/02/28 0:00:00 - 4 years = 2008/02/28 0:00:00

2016/03/01 0:00:00 + 1 years = 2017/03/01 0:00:00
2016/03/01 0:00:00 - 1 years = 2015/03/01 0:00:00
2016/03/01 0:00:00 + 4 years = 2020/03/01 0:00:00
2016/03/01 0:00:00 - 4 years = 2012/03/01 0:00:00

うるう年かどうかの判別については§.うるう年を参照してください。