To be quite honest, my players are probably about on the same level as your son and his friends. (And it is an extremely fun way to play D&D!) For example, in one ultra-high-stakes encounter at the end of last session, two key players spent their actions that round insulting and then slapping each other, because it made zany sense in context. (One of the players, due to PC death, was playing the NPC hitherto-antagonist. The scene was supposed to be "former enemies unite when attacked by a third party" but it played out more as "former enemy dithers and then rabbits with Dimension Door, leaving PCs holding the bag, when attacked by a third party.")
Still, it's a fun exercise to look at what the Marilith is capable of, which you can then use to decide what she'll actually do. The most obvious combination is for her to drop Darkness on herself and commence strafing the PCs with poisoned arrows, or teleport on top of them with her bonus action. Thanks to Truesight she can see through her own darkness even if the PCs enter it, so she'll probably be at advantage to attack and disadvantage to her attackers, unless they have a Devil's Sight warlock or a druid with Earth Elemental Tremorsense or Giant Constrictor Snake blindsense or similar.
But. Let's assume this Marilith likes a challenge, or at least novelty. If I were a Marilith, confident in my ability to defeat my foes, and looking to eke as much enjoyment out of the conflict as possible, what would be my next move? Probably to exploit my swimming and climbing speeds. I think I want to get a PC into the water (either by waiting patiently until I can surge up and grab one, or by just grappling and teleporting with the PC--although the former method of patiently lurking sounds more fear-inducing to the PCs and therefore more fun). In the water, PCs without a swimming speed will have disadvantage on most attacks (I'm AFB but I think there's only a short list of weapons which don't have disadvantage) and he'll be struggling to get away before he drowns. In fact, I may just hold him underwater instead of killing him with my longswords. If I Hex him first, he's almost certainly not going to be escaping from my Athletics +10.
If I do things right with the sphere of Darkness, the PCs won't even know what it is that is inside the ball of Darkness. It's about as good as Invisibility from the information-hiding perspective. Perhaps all they'll see is a ball of Darkness that appears in their midst, grabs a PC, and falls off a ledge into the water, along with the PC... who never comes back.
In general, hit-and-run tactics are going to be very strong with this Marilith, especially in broken terrain. 160' of mobility (Teleport + movement) is impressive, enough to keep up with almost anything except a caster on a Phantom Steed... in which case you just kill the steed. With Cloudkill if necessary, in the rare case where the rider has Mounted Combatant to prevent me from just shooting the steed.
Polymorph definitely has potential too. Unfortunately I can't Polymorph into a human because it only allows beasts, but it might be funny to, for example, Polymorph myself into a cute little monkey and start cozying up to one PC while picking on another, throwing food and worse things at him, and then acting all innocent when I get caught. Try to bait the PC into actually physically attacking the helpless little monkey and actually "killing me", then... Marilith, suckers! Surprise! Another variation would be to Polymorph into a genuinely dangerous creature like a Giant Crocodile to see how they attempt to handle me, and then transforming back into a completely different threat after the crocodile form is dead.
Another thought: Blade Barrier combos in entertaining ways (for the Marilith) with Shield Bash/push 10' variant. For extra fun, you can teleport across the barrier and Shield Bash them right back through it again. Use this to both isolate creatures from their friends (Pushing all the friends through the barrier) and also to inflict damage.
Don't forget that you can always voluntarily lie prone to give enemies disadvantage on ranged attacks against you. Imagine the Marilith flopping down on the floor during her turn, 50' away from the party. Does anyone dare approach her to melee range? You'd have to Dash so you wouldn't even get an attack in (unless you've built for mobility), and she's just going to teleport away on her next turn anyway. If you do this right, you may not even need to use your concentration on Darkness--you can save it for Hex instead.
Unlike the vanilla MM Marilith, this Marilith is fun to be. Very well-suited to cat-and-mouse games. A winning PC strategy may involve baiting her into overconfidence and then hitting her suddenly with everything you've got. Specific examples that might take her down include a monk with Stunning Strike, or bunch of Warlocks all holding their actions to hit her on her own turn with their Eldritch Blast spells simultaneously. (She gets only one reaction per turn, so if they all attack her on the same turn via a readied action, she gets only one Parry. Might be a worthwhile tradeoff.) She's also liable to be overconfident about her ability to detect illusions due to truesight; maybe you can leverage that against her by presenting her with illusions from beyond her Truesight range.
Another vulnerability she has is that she only has two swords and one bow, so she's somewhat vulnerable to Disarm (variant rule from the 5E DMG; or the battlemaster maneuver), although her excellent Athletics mitigates that danger a little, as does her large size.