Entity em DDD

Bom pessoal, tem uma dúvida em relação a como recuperar dados de uma Entity.
Por exemplo:

public class Usuario {
    private List<Grupos> grupos;
    
    public List<Grupo> getGrupos() {
        return grupos;
    }
}

Pergunta, qual a melhor maneira de recuperar esses grupos quando eu obter meu Usuário?
1 - Quando meu repositório for retornar o Usuário já faço ele retorna a lista de grupos?
2 - Faço lazy load para carregar esses grupos? Neste caso faria o repositório de Usuários retornar os Grupos ou o repositório de Grupos os retornariam? Se for o repositório de grupos, eu o colocaria dentro da minha entity Usuário?

Por default faça lazy em tudo, após testar e fazer profiling descubra o que você precisa de mais performance. Ah, e note que esse problema não está relacionado à Domain-Driven Design e sim mapeamento objeto-relacional (e gerência de memória).

Certo…mas ainda to na duvida em qual repositório faço a busca dos grupos? Qual vcs acham que é conceitualmente melhor?

Depende. Quem é seu aggregate root?

eu nao tenho certeza mais acho q é o grupo. Pq no caso os usuarios estao dentro dos grupos, e um usuario nao existe sem um grupo.