Ran into an issue where, after adding a network card, and adding a static route on a second network card, I was unable to connect. I could see Windows receive the SYN packet, but it made no attempt to send a SYN+ACK back.

The issue was that, when you add a route to windows like so:

route add -p 1.2.3.0 mask 255.255.255.0 44.55.66.77

Which should send all traffic for 1.2.3.0/24 towards 44.55.66.77, Windows will happily assign this route to a network card that cannot access 44.55.66.77.

The solution is to find the MAC of the network card you want it to go out of (ipconfig /all), then run:

route print

And at the top there is an interface list. Look up the interface number there, and use this command, where 22 is the interface number:

route add -p 1.2.3.0 mask 255.255.255.0 44.55.66.77 IF 22