I run it in debug mode, and the frame rendering finish long beefore the second timer event. Here is a resume of all the code, is quite large one to post completely. private class Principal:Form { //.... declarations , constructor, Othes Methods, etc. //waht is important for the case private Bitmap offScreenBmp; private Graphics offScreenDC; private Bitmap FondoLimpioBmp; private bool DrawingToBuffer; private viod BackImg() //this is been called once at form_load (for now). { DrawingToBuffer = true; FondoLimpioBmp = new Bitmap(BackIngPath); //BackIngPath is string containing path and file name of backgound image. FondoLimpioBmp = new Bitmap(BackIngPath); Graphics FondoLimpioDC = Graphics.FromImage(FondoLimpioBmp ); //Draw Some Gradients here to FondoLimpioDC, no problems here //PicBack is a PicuteBox in the form. offScreenBmp = new Bitmap(PicBack.Width, PicBack.Height); offScreenDC = Graphics.FromImage(offScreenBmp); offScreenDC.Clear(Color.Transparent); offScreenDC.DrawImage(this.BackgroundImage,new Point(0,0)); offScreenDC.SmoothingMode = SmoothingMode.AntiAlias; offScreenDC.DrawImage(FondoLimpioBmp , 0, 0); FondoLimpioDC.dispose(); offScreenDC.Dispose(); //Add this after yuor comment. DrawingToBuffer = false; } private void Paginar() /// this is called from Timer_Tick event { if (!DrawingToBuffer){ //flag para prevenir 2 instancias al mismo tiempo // Here gos code to read data from database.... DrawingToBuffer = true; offScreenDC = Graphics.FromImage(offScreenBmp); offScreenDC.Clear(Color.Transparent); offScreenDC.DrawImage(FondoLimpioBmp, 0, 0); offScreenDC.SmoothingMode = SmoothingMode.AntiAlias; StringFormat sf = new StringFormat(); Brush tBrush = Brushes.Black; sf.LineAlignment = StringAlignment.Center; Font tFont = new Font("Arial", 17F, FontStyle.Bold); string itemToShow; int Y1, Y2, Y3, Y4; RectangleF txtRect; for(int i = 0; i < 10; i++) { Y1 = (sepHeigth * i) + (rowHeigth * i); Y2 = (sepHeigth * (i + 1)) + (rowHeigth * i); Y3 = Y2; Y4 = (sepHeigth * (i + 1)) + (rowHeigth * (i + 1)); sf.Alignment = StringAlignment.Center; txtRect = new RectangleF(TitleSrv.Left, Y3, TitleSrv.Width, rowHeigth); itemToShow = LSRVLbl[i].Text; sf.FormatFlags = StringFormatFlags.NoClip; //*********************************************************