This was very helpful; here is the code in C#:

HTML Code:
            fileInfo = getTiffFileInfo();
            bitmap = new System.Drawing.Bitmap(fileInfo.FullName);
            size = bitmap.Size;
            frameDimension = new System.Drawing.Imaging.FrameDimension(bitmap.FrameDimensionsList[0]);
            
            imageCodecInfo = GetEncoderInfo(ImageFormat.Tiff);
            encoderParameters = new EncoderParameters();
            
            encoderParameters.Param[0] = new EncoderParameter(System.Drawing.Imaging.Encoder.SaveFlag, 
                            (long)EncoderValue.MultiFrame);

            _frameCount = bitmap.GetFrameCount(frameDimension);
            for (int _i = 0; _i < _frameCount; _i++)
            {
                bitmap.SelectActiveFrame(frameDimension, _i);
                switch (_i)
                {
                    case 0:
                        newBitmap = new Bitmap((Image)bitmap.Clone(), size.Width, size.Height);
                        newBitmap.Save(newFileInfo.FullName, imageCodecInfo, encoderParameters);
                        encoderParameters.Param[0] = new EncoderParameter(System.Drawing.Imaging.Encoder.SaveFlag,
                            (long)EncoderValue.FrameDimensionPage); 
                        break;

                    default:
                        newBitmap.SaveAdd((Image)bitmap.Clone(),encoderParameters);
                        break;
                }

            }
            encoderParameters.Param[0] = new EncoderParameter(System.Drawing.Imaging.Encoder.SaveFlag,
                (long)EncoderValue.Flush);
            newBitmap.SaveAdd(encoderParameters);
            newBitmap.Dispose();