Internet download speed is dependant on a number of factors and in my experience the most notable factor that affect download speeds is the Receive Window (RWIN) TCP parameter.
The Receive Window is the number of bytes that the remote server will send to you before it must have an acknowledgement that the data has been received. If your RWIN is too small then you will only get a small amount of data before you must send an acknowledge packet back and this can cause a severe bottleneck on faster connections.
The reason that RWIN is important is because of the delay (latency) in sending back an acknowledgement, it can take several hundred milliseconds for a packet to travel across the internet, just to tell the server that you want more data. With a small receive window this means that you are artificially limiting your own bandwidth.
To explain why two downloads at once would suddenly mean that you can download at full speed: it is because by downloading from another site you are using slightly more bandwidth and you are actually causing a extra (albeit small) delay in the process of receiving data, which gives your computer a small fraction of a second more time to send an acknowledgement.
This sounds slightly counter-intuitive but but when you think of your downloads as a stream of data that comes to you in a queue and you are effectively ticking off each portion of data as it comes in, when you put more data packets (from somewhere else) in the queue you are efectively increasing the amount of data packets in that queue and thus delaying the process just long enough for your acknowledge packets to get back to the remote server so they can send more data back to your queue.
An (online) tool that will test your internet connection, suggest appropriate settings and tell you how to adjust them in your operating system is the DSLReports Tweak Test. It does require Java, but other than that the advice it gives is sound.
Vista and Windows 7 automatically adjust their own TCP settings "on the fly", if you are getting poor performance over ADSL using either of them then chances are it is a problem with your router or ISP.