Как заставить таймер продолжать работать, пока цикл ожидает другого результата времени?

у меня есть следующая проблема в моем коде, у меня есть этот цикл, работающий на таймере (это лишь малая часть циклов, которые работают на большом таймере),

внутри этого большого таймера (он тикает каждую 1 секунду) у меня есть 1 метод, которому нужно подождать 5 секунд, а затем продолжить с остальным кодом цикла, но я хочу, чтобы он не застрял в коде, и таймер продолжит работать каждую 1сек и не буду ждать тех 5 секунд.

Что я сделал, я добавил новый таймер (timer_deva), который тикает каждые 5 секунд и выполняет все проверки внутри него, а затем таймер останавливается.

поэтому моя проблема в том, что мне нужно подождать 5 секунд, чтобы получить значение для завершения моего кода, но мне нужно, чтобы мой основной таймер продолжал работать одновременно, и когда он получит свой результат в другое время, ему нужно будет завершить код, который он оставил позади.

заранее спасибо,

else if (mobID.Equals(Convert.ToInt32(txtDeva)))
{
    //START CHECK WITH TIMER
    timer_deva.Start();
    //Methods inside timer_deva update the winnerNation
    //END CHECK TIMER - GET RESULT
    winner(zoneId, winnerNation, humansKills, orcKills);
}

Ответы на вопрос(1)

Ваш ответ на вопрос