title: General Rule for When to Implement IDisposable
body: <p><strong>EDIT:</strong> This question is a duplicate of <a href="https://stackoverflow.com/questions/492984/what-is-the-difference-between-managed-and-native-resources-when-disposing-ne">What is the difference between managed and native resources when disposing? (.NET)</a> and many others. Please answer the others if you have something to add.</p>
  
  <hr>
  
  <p>According to the <em>Framework Design Guidelines</em> by Krzysztof Cwalina and Brad Abrams, a type that contains instances of disposable types should implement IDisposable.</p>
  
  <p>Is there any other general rule of thumb for when it is best practice to implement IDisposable?</p>