Clarification: Only use one hand crossbow because a second actually interferes with itself and allows fewer attacks.
Level 10 Hunter Ranger (or Hunter 8 / Fighter 2)
Start off with a Human; Variant with the Crossbow Expert Feat.
Starting stats: Str 10 - Dex 16 (Human +1) - Con 14 - Int 8 - Wis 14 (Human +1) - Cha 12
Strength, Intelligence, and Charisma are interchangeable. Dexterity is your main stat, so you want that as high as possible. Constitution is useful for staying alive and Wisdom is your casting stat.
Level 1 - Ranger
Depending on how you get your gear, you going to want to get Studded Leather as soon as you can, and a Hand Crossbow (HXB, from now on). It wouldn't hurt to have a Rapier and a Heavy Crossbow on hand, as well.
Attack Counter: 2 HXBor 1 Melee 1 HXB
Level 2 and 3 - Ranger (Hunter)
Hunter path taken and Hordebreaker unlocked. Take the Archery Fighting Style for +2 to hit. This is where the fun starts. You get a free other attack against an adjacent enemy to one of the enemies you attack this round!
Attack Counter: 2 HXB + 1 adjacent or 1HXB + 1 Melee + 1 adjacent Melee
Level 4 - Ranger (Hunter)
Ability Score increase to Dexterity. You're just making yourself better at everything. +1 Damage, +1 Attack, +1 AC.
Attack Counter: 2 HXB + 1 adjacent or 1HXB + 1 Melee + 1 adjacent Melee
Level 5 - Ranger (Hunter)
Extra Attack! And Level 2 Spells, which means Hail of Thorns.
Attack Counter: 3 HXB + 1 adjacent or 1HXB + 2 Melee + 1 adjacent Melee or Hail of Thorns to AoE 1 of your attacks + 3 attack chances
Level 6 - Ranger (Hunter)
Honestly, if you're going to multiclass, you could do it here instead of later (I talk about it in levels 9-10), but you'd delay your Ability Score Increase; level 6 is a snooze level, so I wouldn't blame you.
Attack Counter: 3 HXB + 1 adjacent or 1HXB + 2 Melee + 1 adjacent Melee or Hail of Thorns to AoE 1 of your attacks + 3 attack chances
Level 7 and 8 - Ranger (Hunter)... Feat? or ASI?
Sharpshooter has some good bonuses for attacking through cover (including attacking behind other creatures) and at long range, but the big-ticket item here is the damage boost. +10 vs scrubs is huge - on top of your 1d6+4 (average 7).
Maxing out your Dex is a great help. +1 to most of the things you're doing in combat (to hit, damage, and AC) makes for a good day.
The choice is yours between pure "kill it" and being ever so slightly more well rounded.
Choices aside, you get one more 2nd-level Spell Slot, which means one more Hail of Thorns.
Attack Counter: 3 HXB + 1 adjacent or 1HXB + 2 Melee + 1 adjacent Melee or Hail of Thorns to AoE 1 of your attacks + 3 attack chances
Level 9 and 10 - A choice.... stay Ranger (Hunter) or dip Fighter or dip Rogue
Staying in Ranger (Hunter) gives you access to 3rd level spells at level 9 (i.e. - Conjure Barrage twice per long rest) and gives some features I don't care about (Looking at you, Hide in Plain Site)
Taking 1 level in Rogue gives you a few things and let's you still get access to 3rd level spells; mainly, you get Expertise and 1d6 Sneak Attack once a turn. Not a huge boost, but it's something.
I'm a sucker for a 2 level dip into Fighter; I love action surge. This would net you another Fighting Style (Protection, probably), Second Wind for a tiny bit of survivability, and Action Surge for another... uh... Action. This would only give you two more attacks once per rest (or whatever you use it for), but it's something.
Attack Counter: 3 HXB + 1 adjacent or 1HXB + 2 Melee + 1 adjacent Melee or Hail of Thorns to AoE 1 of your attacks + 3 attack chances or Conjure Volley.
Additional Notes
When fighting a single large enemy, it may be worth it to use Hunters Mark to stack on an extra 1d6 with every hit. However, with multiple smaller enemies, you're likely to have to keep swapping your Mark, which you could just use your bonus action to attack with.
level 11, Rangers (Hunter) gain the Multiattack - Volley class feature, which sounds like exactly the goal of this class:
Volley
You can use your action to make a ranged attack against any number of creatures within 10 feet of a point you can see within your weapon's range. You must have ammunition for each target, as normal, and you make a separate attack roll for each target.
Honorable Mentions
Bard
Level 6 Lore Bard gets access to Hail of Thorns via Magical Secrets, and six times! Take 3 levels in Hunter for the Horde Breaker feature or 2 levels in Fighter for Action Surge.
Or Level 10 Valor Bard also gets access to an extra attack, Magical Secrets (Hail of Thorns! or Conjure Volley. Why not both?)
The only problem is how long it takes for these builds to "come online".
Fighter
Fighters get the most attacks, so this seems like an ideal choice. But with the level 10 restriction, we don't get much bonus over other martial classes.
Eldritch Knight is appealing for the handful of spell options; you could combine it with Hunter 3 for Hordebreaker for some fun combinations with Warmagic (Green Flame Blade works with ranged weapons within 5 ft.... because of reasons). The main reason this is rejected is because it doesn't feel on theme with what you want.
I wanted Battlemaster to work, but most of the Martial moves implement Melee Attacks.
War Cleric 2 / Hunter 8
Ranger and Cleric use the same Ability Score and you can upgrade to a Heavy Crossbow instead of a Hand Crossbow 5 times per long rest. One use of Guided Strike per rest to give you a +10 that attack that really has to hit. A couple extra healing slots never hurt anyone.
Again, I like this build, but it doesn't seem on theme with what you want.
Rejects
Warlock + Anything
I wanted this to work pretty badly (See here for an amazing breakdown of what a Warlock and a Hand Crossbow can accomplish). And I think that Pact of the Blade Hexblade Warlock 12 / Hunter 3 is pretty scary. 2 Attacks with +10 damage from Life Drinker and the bonus attack from Crossbow Expert AND the Hordebreaker from Hunter 3... alas, level 15 is not level 10 and there's not much value in Warlock 7 / Hunter 3.
That, and it requires a magical Hand Crossbow... Which can theoretically be loopholed with a multiclassed sorcerer willing to extend Magic Weapon, but I digress.
Barbarian
Doesn't play nice with dex-based ranged weapons.
Paladin
Paladin is a tank, or a nuker. Not a lot of synergy with spreading your damage around.
Rogue
Rogues do not get enough attacks to make this class super useful on its own.
Arcane Archer
Requires Shortbows or Longbows.