IsZero works okay as an &quot;infinite past&quot; value, such as marking that a cache entry has already expired, but it&#x27;s cumbersome to use as an &quot;infinite future&quot; because zero is naturally <i>less</i> than all the timestamps you&#x27;re likely to encounter.<p>It&#x27;s also not a great idea to manually define the largest possible timestamp as a sentinel, because Add(Duration) doesn&#x27;t check for overflow.