<p>What are the most common memory optimizations in csharp, dotnet 2.0.  Wanted to see if there common things that people may not be doing by default in winform app</p>

use structs for small wrapper objects to avoid heap fragmentation
think carefully about object lifetimes, especially for large objects so they do not end up on the LOH unless you intend them to
think about allocations inside of a loop
make sure dynamically sized array will be of reasonable size, otherwise partition the problem