The top level horses race the least, typically once a month or less.
The reason for this is these horses travel the country searching for top level races with elite purse money. Lower level horses run once once every two - three weeks. This is common because of the larger number of lower level horses naturally causes there to be more races designed for lower level talent.
Additionally a one month break is ideal to get the best performance out of a horse; something that is typically only necessary for elite horses. During the time between races horses workout, just as any other athlete to remain physically fit for competition.
Historically, good horses would have raced with a week's rest or less. Now it is not uncommon to see three to five weeks of rest between races. This can be largely related to the amount of inbreeding in the sport and the universal use of Lasix. These two factors combined result in race horses being much more frail than their ancestors and needing longer to recover between outings.