Memory:
I'm sorry... The volunteers here can really only help you with problems that you narrow down, and not redesign your software archetecture. Other than basic coding suggestions like "make sure you dispose of every object you create", there is no way anyone can tell you where your memory is being consumed. For all we know there is a loop making 10,000 sign-in objects when you need only 1.
GAC:
Explaining the entire GAC is far beyond the scope of a thread. There are entire books on the subject. But it can't hurt to start at MSDN.
http://msdn.microsoft.com/en-us/libr...sz(VS.71).aspx
Ngen.exe
Go to the source: Microsoft
Please don't be offended when I say
"If you're having this much trouble in so many vital areas then this project may be beyond what your company can do." Maybe it's time to tell your boss that you don't have the training to complete this project. It might be the nudge (s)he needs to get you some more training which can only further your career.
Either that or your company needs to quit underbidding qualified coders on projects that they don't have the expertise to handle - because it is unfair to their staff (you) to expect results they aren't prepared to produce. Nobody needs that kind of pressure placed upon them. It just makes people miserable.