¿Cómo dividir un gif animado en .net?

¿Cómo se divide un gif animado en sus componentes en .net?

Específicamente quiero cargarlos en Imágenes (System.Drawing.Image) en la memoria.

======================

Basado en la respuesta de SLaks ahora tengo esto

public static IEnumerable<Bitmap> GetImages(Stream stream)
{
    using (var gifImage = Image.FromStream(stream))
    {
        var dimension = new FrameDimension(gifImage.FrameDimensionsList[0]); //gets the GUID
        var frameCount = gifImage.GetFrameCount(dimension); //total frames in the animation
        for (var index = 0; index < frameCount; index++)
        {
            gifImage.SelectActiveFrame(dimension, index); //find the frame
            yield return (Bitmap) gifImage.Clone(); //return a copy of it
        }
    }
}

Respuestas a la pregunta(4)

Su respuesta a la pregunta