Depending on the medication given, I use 16 ga. To 22 ga. Needles. I use 1 1/2 inch length needles on full grown horses and use 1 inch on babies and yearlings.
I am very picky where I give injections because treating abscesses is not fun. I use the side of the neck for non-irritating drugs and use the back of the hind end just below the back-most part of the hip.
NEVER use the top of the horse's butt and NEVER use the pectoral muscles. NEVER use a place that will not drain should you get an abscess.
Give anything IV that can be given IV.
Give Subcutaneous injections for small injections like hormones and Tetanus Antitoxin.
If there is ANY possibility that a bottle is not sterile or any possibility that a syringe is not sterile (like the seal is broken), many drugs can be given orally and are just as effective. Injectable Bute, tranqualizers like Ace Promazine, injectable Vitamins, liver and Iron, etc, can all be given orally. They absorb completely -- just take a little longer.
Typically 20-gauge, 1.5 inch. Anything shorter runs the risk of not reaching the muscle, and anything thicker than 20-gauge is, well, ugly and painful, unless it's necessary for pencillin or something.