Opa Alan, tudo bem?
Rapaz essa pergunta é difícil haha. Quando estamos estudando arquitetura, geralmente falamos que não existe a melhor arquitetura. Mas sim a melhor arquitetura para resolver um tipo de problema.
Você citou duas, DDD e SOA (confesso que ultimamente tenho estudado muito essas duas). O DDD é mais como uma forma de organizar seu código, isolar a camada de domínio de outras camadas, como infraestrutura e aplicação. Já o SOA é um tipo de arquitetura que é usada em serviços distribuídos. Geralmente, o pessoal utilizava SOAP, mas essa tecnologia já está caindo em desuso. O REST é a tecnologia que domina o mercado atualmente.
Pensando em projetos WEB, uma arquitetura muito utilizada é a MVC, aqui na Alura, temos a carreira em desenvolvimento Python para web que passa por esse tipo de arquitetura de código. O MVC é um exemplo de arquitetura em camadas.