I'm not quite following you here, I can easily do "load-balancing" between two network connections on my linux fw (no-brand white box HW), by routing one set of TCP-streams via one interface and other set via another (main and backup network connections, the backup one is puny but every little bit helps...). No real multi-homing needed.
Now for a single tcp-stream download (http, ftp, etc) this does not help at all, but browsers usually open at least two tcp streams per server to request data faster (why using multiple parallel streams is usually faster in practise even without simple connection balancing has to do with pecularities of TCP in the real world) and many sites load data from multiple servers.
P2P applications abuse the proverbial ton of TCP-streams so they can practically fully utilize such setups.