Как реализовать вывод товаров из List у которых закончился срок годности?
using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;

namespace ConsoleApp2
{
    /// <summary>
    /// Не используйте транслит! Любой китаец или индус поймет английский, 
    /// а вот русский только поржет. 
    /// </summary>
    public class Product
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public string ImportDate { get; set; }
        public string Description { get; set; }
        /// <summary>
        /// Рубли умноженные на 10000. помним об этом то есть у вас копейка имеет 2знака после запятой!!!!
        /// </summary>
        public Int64 Price { get; set; }
        public int Discount { get; set; }
        public string Category { get; set; }
        /// <summary>
        /// Дата списания
        /// </summary>
        public string DueDate { get; set; }
        public string ДляОсобоУпоротыхЭтоТакиРаботает { get; set; }
    }
    public static class Extensions
    {
        /// <summary>
        /// Convert string from format dd.MM.yyyy to DateTime
        /// </summary>
        /// <param name="inputDate"></param>
        /// <returns></returns>
        public static DateTime ParseDateDayMounthYear(this string inputDate) =>
            DateTime.ParseExact(inputDate, "dd.MM.yyyy", CultureInfo.InvariantCulture);
    }
    class Program
    {
        static void Main(string[] args)
        {
            #region заполняем список товаров
            List<Product> tovar = new List<Product>()
            {
                new Product(){Id = 2,
                    Name = "Яблоки",
                    ImportDate = "11.11.2022",
                    Description = "Свежие яблоки.",
                    Price = 1000000,
                    Discount = 5, 
                    DueDate="11.11.2022",
                    Category = "Овощи"},
                new Product(){Id = 2,Name = "Молоко",
                    ImportDate = "16.10.2021",
                    DueDate="16.10.2021",
                    Description = "Свежее молоко.",
                    Price = 800000,
                    Discount = 10, 
                    Category = "Кисломолочные"}
            };
            #endregion

            // число месяц год
            var data =  tovar.Where(item => item.DueDate.ParseDateDayMounthYear() < DateTime.Today).ToList();
        }
    }
}
Сделайте дату датой, и потом такую выборку
tovar.Where(item=> (item.dataproizv.AddDays(21)) < DateTime.Today );