Question: I have two Internet connections, how can I have downloads go through one and uploads go through the other without a new router?

I was thinking two network cards in a computer, but how do you connect to both and route downloads/uploads to the different connections?

Answer: 
[Dispatch proxy](https://github.com/Morhaus/dispatch-proxy) may work here, and in fact this is one of the use cases suggested, and may do even more. 

1. You need two connections, and ideally if they're on seperate routers *non overlapping* ip address ranges.
2. run dispatch proxy (or I guess any proxy), and bind it to one interface. Tell software to use that proxy
3. Dispatch-proxy would also let you do 'naive' load balancing with 2 interfaces and one dispatch proxy instance. It'll either let you combine multiple internet connections and/or set the proportion of connections (not traffic) that go through each.
This is not possible, unless you are running all connection with UDP (but not every application is supported), TCP handshake process is already included upload