We are very used to terms like DDD in domain modelling, TDD in the testing approach or SOLID in maintaining good code. They are tremendously important. But is there anything else? I would like to show you C# design inside out – where already known to you good practices seem to be counterproductive and are screaming because of bad performance. Please enter the world of data-oriented design and other techniques that regular object-oriented developers will find astounding! Everything to squeeze the last bit of performance from your code.