I’ve done this in a WIP game and can verify it works how you want it to.
The crowd can be told to go somewhere together, which is fine, but not what you want. They avoid each other great, though. So what I do is I set each individual agent’s target position using the function Eugene referenced. I think the Sample has the first agent go to the exact group destination and each other npc is a random point somewhere near (in a radius around it), however you can override that and just set all those targets to anywhere on your navmesh. I use script objects to track where they are and when they arrive at their destinations (for example with waypoints) and then set the next one.