То, что я хочу сделать, в основном в названии вопроса.
Это то, что я до сих пор пытался безуспешно.
Обратите внимание, что я не реализовал точные часы и минутыпока (9:30 вечера).
На самом деле, кажется, что по какой-то причине всегда возвращается значение между 00:00:59 и 00:00:01
DateTime nextSunday = DateTime.Today.AddDays(((int)DayOfWeek.Sunday - (int)DateTime.Today.DayOfWeek + 7) % 7) + new TimeSpan(21, 30, 0);
TimeSpan untilNextSunday = nextSunday - DateTime.Now;
await ReplyAsync($"It is in **{TimeSpan.FromSeconds(untilNextSunday.Seconds)}**");
Что равно
var today = DateTime.Today;
var daysUntilSunday = ((int)DayOfWeek.Sunday - (int)today.DayOfWeek + 7) % 7;
var nextSunday = today.AddDays(daysUntilSunday);
var ts = new TimeSpan(21, 30, 0);
nextSunday = nextSunday.Date + ts;
TimeSpan untilNextSunday = nextSunday - DateTime.Now;
Если возможно, я бы также хотел использовать Paris TimeZone.