Tener clara la diferencia entre un patrón de diseño, un estilo de arquitectura y una arquitectura de software marca la diferencia entre un aficionado y un profesional
Si quieres aprender tienes que hacer cosas, un excelente inicio sería hacer un mantenedor completo con .Net Core MVC, y consolida toda la teoría aprendida usándola junta 😉