Différence entre destructeur, d'en disposer et de finaliser la méthode

Je suis en train d'étudier comment garbage collector travaille en c#. Je suis confuse sur l'utilisation de Destructor, Dispose et Finalize méthodes.

Que par mes travaux de recherche et de compréhension, d'avoir un Destructeur de la méthode dans ma classe de dire le garbage collector pour effectuer la collecte des ordures dans le chemin mentionné dans le destructeur de la méthode qui ne peut être appelé explicitement sur les instances de la classe.

La Dispose méthode est destinée à fournir à l'utilisateur de contrôler la collecte des ordures. Le Finalize méthode libère les ressources utilisées par la classe, mais pas de l'objet lui-même.

Je ne suis pas sûr si je comprends bien le droit chemin. Veuillez clarifier les doutes. Toutes les autres liens ou les guides sont les bienvenus.