Рискну предположить что вы запускаете вашего бота на IIS, если это так то проблема вероятнее всего в настройках IIS App Pool Recycling - по умолчанию IIS перезапускает приложение раз в день + (при)останавливает его если в течении 20 минут не был обработан ни один запрос. Запуск после этого как раз занимает несколько секунд.
Вот тут картинка как это отключить, там есть нюансы поэтому лучше почитать комментарии -
https://stackoverflow.com/questions/51348433/iis-1...
Ещё вы пишете что время запуска зависит от времени простоя.. надеюсь вам показалось, потому что представить как такое возможно сложновато :) Хотя - если у вас приложение читает много данных с диска при старте - возможно виноват дисковый кеш (чем дольше простой тем меньше вероятность найти данные в кеше и тем больший объём надо считать с диска при старте).