I've done a lot of C# programming and the architecture we use of late is a MVC => PresentationService => Domain Service And/OR DataService => Repository with a UnitOfWork and a messaging bus. In web applications this gives a pretty clean and flexible design that's extensible but is also stateless.
I've been working on a 2D starter project in XNA and I find these layers are still useful until I get to the interface and start trying to deal with knowing the states of everything, keeping the sprites and bounding rectangles and detecting clicks and drags.
What patterns should I be looking at that maybe I just wasn't exposed to doing enterprise architecture but are clearly needed in a game.
Which concepts might I need to let go of when doing a game because they are not applicable.