At first CQRS may look like the umpteenth acronym of this crazy industry and the latest cool toy of software pundits. In spite of the fancy name, though, CQRS is only a smart implementation approach that WORKS with nearly every software problem. CQRS is not a philosophy or a methodology: it's just about writing code. CQRS doesn't mandate you create sophisticated object models full of injection points, replaceable behaviors, factories and virtual methods. CQRS lets you use old-faithful stored procedures if you trust them. CQRS brings just one core idea: keep write and read stacks completely separated and based on different models and even different implementation patterns and technologies. So the best-selling point of CQRS pattern is that it looks like just common sense and a smarter way of doing the same things. In this talk, we'll look into a multi-layer ASP.NET application where reads and writes operations are totally separated so that each can be optimized for scalability without affecting the other.