Implementing an interface is a contract between developer and user of class. When you implement IDisposable in a class any user of that class can be sure that if they call the Dispose method all resources taken by the class is released - that is, if you have written the class properly. In the case of interface IDisposable specifically you just have to learn that this is the single "cleanup" interface used by all classes (- the exception is if developer of class for example tell you that using Close method is also good for final call and cleanup). So if you create an instance of a class in code and you see it has a Dispose method you would call it when you're finished with the object to let this class do any cleanups necessary. Why many beginners forget this is because this is not done manually for components/controls added to form, the forms generated code automatically dispose all controls and their childs when closing. Also, you don't get an error if you don't dispose in most cases, and eventually memory will be reclaimed, so for beginners this topic may be transparent and of less importance than 'managing to get the job done at all'.
There also exist a code structure in VB that takes advantage of this contract for disposal, the Using code block. Check with documentation to see how this work, and may ease the code writing for you in regard of cleanup code.