I've done all sorts of the suggestions on here.
DS1 started in ski school at 4. Loved it. Organised independently with English speaking ski school. He's 11 now and skis with me, all runs from green to black.
DS2 started in ski school at 5. Also loved it. He's now 8 and is only having 3 days' of lessons this year, he will ski with me the other 4 days. He can also ski some black runs (I check them out first).
I've been with Esprit a couple of times, and they were brilliant. The children stayed with the other children from the chalet, had a great time at lunch and I met them early afternoon to practice going up and down nursery slopes to start with, then right up the mountain as they got better and more confident.
Both my DSs are very sporty though, and confident. Neither had any separation issues.
Best ski schools I've found are the Austrian ones. They have various options - 2 hours in morning and then collect, 2 hours in morning, lunch then collect, or 2 hours in morning followed by lunch and a 2 hour "fun" session in the afternoon - my two absolutely loved the fun lessons, they were taught to jump and whizz through tracks between the trees. On the last day they all had a slalom race, with photos.
It is a fantastic family holiday now that they can both ski. We are lucky in that we all absolutely love the mountains and the skiing. The DSs would rather ski than go on holiday in the summer. We have a brilliant time socially as well - I always book to go in a catered chalet, often with family or friends. Buying your own food up the mountain can be very very expensive, and this way the kids can go to bed earlier than me, there are early suppers provided for them if you want that (and yes, I did sit with them when they ate). That has always been an option - if you book with a child friendly company like Esprit, Mark Warner, Family Friendly Skiing (fab little company operating from La Tania) kids are always welcome at dinner (in my experience anyway).
Best tip - avoid the ESF. I would recommend Austria every time over France.