Layered architecture with dependency inversion — Domain, Application, Infrastructure, and Presentation layers.
Five passes over the same idea, each from a different angle. Do them in order, or jump to whichever you need.
Clean Architecture enforces the dependency rule: inner layers don't know about outer layers. Layers: Domain (entities, value objects), Application (use cases, interfaces), Infrastructure (DB, external services), and Presentation (API/UI). Benefits: testability, maintainability. Implementation in .NET with project structure.