A pergunta que você deve fazer é quantos pedidos você precisa processar por segundo. Esse número está faltando em sua pergunta e, como tal, a pergunta original não pode ser respondida adequadamente.
Existem, no entanto, alguns números na sua pergunta que eu posso dar uma resposta.
Antes de tudo, você menciona um tamanho de solicitação de 100 bytes e um tamanho de resposta de 200 bytes. Um serviço UDP em que as respostas são maiores que as solicitações podem ser potencialmente usadas para ataques de reflexão. Isso é algo que deve ser levado em consideração ao projetar protocolos baseados em UDP.
Outra consideração importante é a possibilidade de um pacote perdido ser equivocadamente interpretado como uma solicitação.
Você mencionou a possibilidade de usar 80 segmentos. Os serviços baseados em TCP usam principalmente um grande número de encadeamentos porque eles geralmente são projetados para que cada conexão exija um encadeamento, e esse encadeamento pode gastar muito tempo simplesmente aguardando o cliente.
Tais períodos de espera não acontecerão em um serviço baseado em UDP. Isso significa que você deve estar usando apenas 80 encadeamentos, se você espera que todos os 80 encadeamentos estejam fazendo o processamento real em paralelo. Isso requer uma máquina bastante poderosa para ter 80 threads fazendo o processamento real em paralelo.
Se você estiver fazendo um processamento pesado sem antes fazer sua própria verificação do endereço IP do cliente, será um alvo fácil para ataques DoS.
Se você estiver implementando um protocolo baseado em UDP e estiver usando vários encadeamentos, provavelmente está fazendo errado.