When you choose the needle sizes you want, consider what you are injecting, as well as the animal getting it. For subcutaneous injections ie just under the skin but not into the muscle, you want a short fine needle - green 21G (gauge) x 5/8 or one inch 'Luer tip' (the type of connection to fit normal syringes). For intramuscular injections you need the longer type, especially for a larger animal, maybe 18G (I think that's pink, maybe yellow - I don't keep them in stock usually). If the liquid you are injecting is very thick then you should use a thick needle - white 16G x 1" or longer, and inject fairly slowly to prevent tissue damage. If you force a thick liquid quickly through a small bore needle you are more likely to cause tissue damage at the injection site. A wide bore needle does not hurt more going in than a small bore one, but the injected solution can hurt. With sheep, if you tap the point where you are about to inject a couple of times, the animal seems to notice the actual needle much less.
For syringes, I usally keep a selection of 2ml, 5 ml (most used), 10ml and 20 ml. I also have some 50ml catheter tip syringes which connect to feeding tubes for intubating lambs - these are useful for all sorts of things, including strange requirements for servicing motorbikes, but I only have them as they are left over from when my husband was ill. The slightly more expensive syringes last for several uses whereas the seal goes very quickly in the very cheap kind - if they have a black rubber bung they are usually ok. We usually get our syringes from the vet but we have also bought online.
You also need a sharps box for disposal of used needles (syringes can go in the rubbish). Once this is full, your vet will dispose of it for a small fee - ours has only been full once in 16 years.