Your browsers starts downloading images in parallel; there's no reason to wait for first image to ask for the second one!
Your webserver, too, starts a session (and a thread) for each request. So, both sessions start in the same second, and wait 5*1000 together... and send response at the same moment.
You can think some kind of trick:
- realize a queue in the server (using Context.Application
to make Threads communicate each other), so that images can be served in sequence
- use a random number instead of System.DateTime.Now.Ticks
to have random delay
but the actual behaviour is emulating a real situation of many images served by a server with same delay time.