I would go with large - can't get much larger than a border collie. I had an ordinary harness for my cocker spaniel, he still pulled with it on but not as bad as with an ordinary leash. This harness has STOPPED him pulling. I am enjoying the walks now.
i have a large Dalmatian pup (length 22inches/collar 18inches) i bought a LARGE sized harness, it is easy to put on and take off and appears to be comfortable to wear, once on my dog doesn't seem aware he's wearing it. Whilst it doesn't stop your dog pulling you have far greater control than using a collar and behaviours, such as pulling can quickly b corrected