Leveraging ILMerge to simplify deployment and your users experience
ILMerge is one of those little-known gems that are an absolute must-have once you know how to apply them effectively to scenarios you didn't even think about.
Specifically, whenever you work on a multi-project solution
that may also use external projects in turn, forcing your
users to add (say) five assembly references just to your
"entry point" library is clearly a bad experience. One
example that comes to mind is
Enterprise Library, where you add a minimum of 3 (IIRC) assembly references
to use just about *any* block in isolation. If you use more
than one, it quickly becomes quite a big list. Wouldn't you
want to just give your users a single
EnterpriseLibrary.dll?...