I am presently working on an NPC feature for one of my games. It is likely to see anywhere between 25-100 NPCs at a given time, depending on how efficient they turn out to be. I recall discussions a long time ago claiming that Humanoid-based NPCs perform terribly and are therefore not practical for use in cases like this.
At the same time, Roblox has made improvements in the past few years. There are many games implementing NPCs, many on a scale much larger than what I plan. Are they using Humanoid-powered NPCs, or are they manually rigging models and programming their movement?