Для указанных вами дат DateTime.Now
предшествует myDateTime1
, поэтому DateTime.Now >= myDateTime1
оценивается как false
, что означает, что весь оператор if оценивается как false
, поэтому выполняется else
код, который возвращает false
.
К вашему сведению, если вы установите точку останова в операторе if (нажмите F9), когда программа останавливается, вы можете навести указатель мыши на двоичные операторы (такие как <=
, &&
и >=
), чтобы показать, что они оценить до.
РЕДАКТИРОВАТЬ: если вы хотите сравнить только дату, используйте if (DateTime.Today >= myDateTime1.Date && DateTime.Today <= myDateTime2.Date)