Hi, Rajesh!
A small detail was missing in your code: you have to use the image you called SelectActiveFrame for.
Code:
Bitmap bm = new Bitmap(infilename);
int total = bm.GetFrameCount(FrameDimension.Page);
for (Int32 k = 0; k < total; k++)
{
Bitmap bm2 = new Bitmap(infilename);
bm2.SelectActiveFrame(FrameDimension.Page, k);
XImage image = XImage.FromGdiPlusImage(bm2);
PdfPage page1 = document.AddPage();
//
// Get Image width, Height and Resolution and Set output document Width and Height in Inches
page1.Width = XUnit.FromInch(image.Width / image.HorizontalResolution);
page1.Height = XUnit.FromInch(image.Height / image.VerticalResolution);
gfx = XGraphics.FromPdfPage(page1, XGraphicsPdfPageOptions.Append);
gfx.DrawImage(image, 0, 0);
gfx.Dispose();
image.Dispose();
page1.Close();
bm2.Dispose();
}