Code: int x; int y; private void panel1_MouseMove(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Left) { panel1.Top += (e.Y - y); panel1.Left += (e.X - x); } } private void panel1_MouseDown(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Left) { x = e.X; y = e.Y; } } I have added a picture in the panel and now its like google maps the panel is moving but the problem is it isn't smooth ! when I move vertically no problem panel moves smoothly, horizontally also ok but wen it comes 2 angle wise move I mean 45 degree move the panel flikers it vibrates pls advice me on how to make this ryt i mean how to move smoothly ?