¿Cuál es la relación entre GC, Finalize () y Dispose?

GC es para objetos administrados y Finalize es para objetos no administrados, eso es lo que he estado leyendo. Dispose es implícito y Finalize is Explicit es lo que he estado leyendo. ¿Alguien puede darme un ejemplo de un módulo en el que las tres cosas se hayan utilizado por diferentes razones?