O cenário

Em um formulário, selecionar país pode atualizar lista de estados, validação e opções de entrega. Se cada controle conhecer todos os outros, mudanças produzem uma rede de dependências. Um mediador coordena a reação a eventos específicos.

Exemplo conceitual

public interface IMediadorReserva
{
    Task ConfirmarAsync(Reserva reserva, CancellationToken ct);
}
public sealed class ServicoReserva(IMediadorReserva mediador)
{
    public Task ConfirmarAsync(Reserva reserva, CancellationToken ct) =>
        mediador.ConfirmarAsync(reserva, ct);
}

Em aplicações .NET, bibliotecas de mensagens podem implementar dispatch de requests e notifications; use-as quando agregarem valor, sem confundir o mecanismo com o padrão em si.

O perigo do mediador gigante

Se toda regra migrar ao mediador, ele vira um objeto central difícil de compreender. Separe coordenação de regras de domínio e mantenha handlers coesos. Compare com Observer, que notifica assinantes, e veja o guia GoF.