It doesn't make a difference as far as gaining EVs goes. A newly-caught Pokemon or a newly-hatched Pokemon both have 0 EVs and would gain the same EVs from the same battle.
Breeding is usually only used for trying to get better IVs, or for getting specific moves through breeding.
It's also easier to train Pokemon when they are a higher level, because you can KO lower level Pokemon easily (e.g. Bidoofs for HP).