¿Cuándo usar referencias débiles en .Net?

Personalmente no me he encontrado con una situación en la que haya necesitado usar el tipo WeakReference en .Net, pero la creencia popular parece ser que debería usarse en cachés. El Dr. Jon Harrop dio un muy buen caso contra el uso de WeakReferences en cachés en su respuesta a esta...