Like others here, I was pretty strict. My dh grew up getting special food and even he has learned to eat what I cook without complaining! As someone else said I do try to have something on the table everyone will eat. Sometimes that might even mean bread and butter.
Each of my kids get a free pass on one food - for my oldest it is pizza (!), my youngest chose cauliflower. I never make them eat that, they get to just pass it by. I also keep a running grocery and meal list for suggestions and try to honor those. It helps if they have picked the meal and even really early on they were surprisingly healthy about it!
My oldest is my pickiest and I do make some concessions - when it is easy to do so. We had spaghetti tonight and he doesn't like the red sauce so he has plain noodles, salad, and I usually pull out leftover meat, etc. from another meal for him. If we have lasagna, he has to just live with it because the sauce is already mixed in. I give a little, he gives a little, we're both happier.
We also got stricter as they got older about what behavior was allowed at the table. At 5, I think it's time to start learning that mom cooked the meal and it is disrespectful to say mean things about the food mom worked hard to make, etc. As my kids got older, tears, making faces, etc. also got them dismissed from the table. Give warnings and then send him from the table hungry. Obviously at 5 he'll need lots of warnings, etc. as well as reassurance that you won't let him starve. (You'll be glad to warm up his leftover plate you saved from dinner!)
I saved my kid's dinner plates if they hadn't "eaten enough to be polite" and they often ate it warmed in the microwave before bed because they were HUNGRY and they knew they weren't getting anything else. They wised up, stopped complaining out loud and started eating enough (or at least pushing their food around so it looked like they did) for me not to save their plate - they knew a choking down a few bites would save them a lot of hassle!
Now that they are old enough to cook, like my dh they keep their mouths shut or they know who will be cooking the next meal!