Voici un petit exemple de transformation d'une Collection en IEnumerable sans utiliser la méthode d'extension Cast<>(). Très pratique à partir du moment où l'on souhaite utiliser Linq.
public static IEnumerable<T> AsEnumerable<T>(this ICollection sender) { foreach (T i in sender) { yield return i; } }
PS: A vérifier ci cette astuce est encore utile après les améliorations apportées au Framework 3.5 par son SP1.