Gustavo, para mim a melhor forma é pondo a mão na massa.
Exemplo: Pegue um conteúdo recém aprendido e crie um novo projeto em que possa aplicar o conteúdo aprendido, comente cada bloco os motivos de cada um deles e vá testando variantes.
Esse projeto você pode ir melhorando conforme vai aprendendo coisas novas, volte nele e melhore, tente criar conexões com o que já existe nele e vá sempre incrementando e testando variações.
De tempos em tempos, tente revisar ele para tentar achar formas de aprimorar e sempre lembre de comentar o que está fazendo.
Esse projeto frankenstein vai servir de consulta futura quando você estiver em dúvida "Como faz parar converter X para Y mesmo?", "Como crio uma tabela temporária mesmo?"...
Outra dica: Ajude outros usuários do fórum nos cursos que você já concluiu, vai reforçar seu conhecimento já obteve.