async aguarda as melhores práticas

Eu compreendi o conceito de async e o uso esporadicamente, mas tenho algumas dúvidas sobre as melhores práticas.

está tudo bem em usar aguardar em um loop while (condição) para continuar buscando dados que possam estar presentes, até que a condição while mude, e. stopProcessingMessages = false.

Em um aplicativo como winforms, enquanto a interface do usuário é executada em seu thread, usar async / wait em uma operação como um clique de botão é bastante trivial, mas que sobre se eu gostaria de aplicar de forma assíncrona em todo um aplicativo de console ou até mesmo um windows serviço. qual é a melhor prática para iniciar inicialmente a primeira tarefa em espera, seria Task.Run (() => ...)?

Espero que esteja fazendo sentido na minha segunda pergunta. Eu quero aproveitar ao máximo o assíncrono e utilizá-lo em toda a sua extensão, mas só precisa entender como iniciar a operação assíncrona inicial antes que ele borbulhe para todas as outras funções assíncronas.

peço desculpas por não usar os blocos de código adequados Eu estou no trem usando meu smartphone.

questionAnswers(3)

yourAnswerToTheQuestion