title: Best practices for referencing 3rd party assemblies
body: <p>I have been wondering what are best practices when it comes to referencing 3rd party assemblies. A while ago I asked a question "<a href="https://stackoverflow.com/questions/268214/dependencies-and-references-what-exactly-should-i-reference">Dependencies and references: what exactly should I reference</a>" and received something to think about but I am not completely convinced. I have a 3rd party assembly needed for building my project and according to what I have read so far I should only reference assemblies needed for building my project. This leaves the problem of the runtime dependencies of the 3rd party assembly. If I reference those too the list of references becomes huge (as there are several dependencies) and includes a lot of assemblies I have no clue what do and are really not related to my project. Also I want to avoid using public methods in any of those and just use the main 3rd party assembly. How can I go about doing this in a decent way?
  Any help is appreciated as I am quite confused.</p>
  
  <p>To give an idea of what I am dealing with here is the 3rd party library uses hibernate and log4net along with office interop assemblies.</p>
  
  <p>Thanks.</p>