The first thing to notice is that you have two timers:
System.Timers.Timer timer = new System.Timers.Timer();
Directory.CreateDirectory(Environment.GetFolderPath(Environment.SpecialFolder.MyComputer) + @"\\server1\KamalSingh\ScreenCaptures");
t.Interval = 5000;
t.Tick += new EventHandler(StartThread);
System.Windows.Forms.Timer t = new System.Windows.Forms.Timer();
Delete the second one, and move the first to a private class level variable - you want it in scope for the whole of the forms existance, rather than local to the form Load even handler. That won't make any difference to your existing code, but it is worth doing for later in your poject.
Secondly, why are you saving in one folder, and loading from another?
bmpscreenshot.Save(Environment.GetFolderPath(Environment.SpecialFolder.MyComputer) + @"\\server1\KamalSingh\ScreenCaptures\" + i + ".jpeg", ImageFormat.Jpeg );
string images = Directory.GetFiles(@"\\server1\KamalSingh\ScreenCaptures\", "*jpeg");
I suspect that if you fix this, your problem might go away...
But personally, I would keep a List of Images instead of re-reading the folder contents and loading the image from the file each time - it's more efficient, and prevents future problems where the file is in use (by your app) because the Garbage collector has not Disposed of your previous image of the same file yet.