I was asked in an email how to get a five year old to eat good food... hmmm... Honestly, I am not totally qualified to answer this, but I am glad to share my experience with you all. Perhaps you can glean some helpful strategies from it.
My kids have always had to eat what we serve them, so there has never been a question about it by the time they are five. Most of their objections are worked out by one and a half or two. When they don't eat what we give them, we save it for them for the next meal and they have to finish it before they get what the rest of us are eating at that meal. And we don't reheat it, so it is usually worse if they wait until the next meal.
No child has tried leaving food they don't like more than one or two times, and they usually try it while they are very young. So, by the time they are five, they just don't object. I can't remember any of my children leaving the unwanted food through the next meal, but Spiderman came pretty close. When he saw that we were all finished and were getting up, he realized he had to eat his cold, unwanted food or I was going to put away the nice warm preferred food. It is amazing what a child can eat when faced with hunger!
But, key point here, I am realistic. I know the foods they don't prefer, and I don't pile their plate with what they don't like. I usually just give them three or four bites of the "unpreferred" food. For example, my children really don't like cooked zucchini, so I rarely cook it. When I do, I just give them three or four bites worth. And then I expect them to eat it.
When Tickle was a baby, she did not like bananas. Mashed banana is one of the first foods I give to my growing babies, but she clearly did not like it. I would give her a bite every once in a while, like every few months. If we were all eating bananas, I would give her a taste. Sometimes I would have her take two bites. But, when she was two, after not having banana for a few months, I gave her a bite and she totally loved it. She ate a whole banana! And she has loved it ever since.
A similar thing happened with Witzy and avocados. She liked them as a baby, but then decided she didn't like them when she was about three. I continued to give her a slice every time we had avocados. Now, at nearly five, she loves them again. I could have catered to her dislike by declaring that she didn't like avocados so she didn't have to eat them. Instead of defaming the fabulous fruit, I kept it all in a positive light and waited for her to change her mind.
Another good tactic we use is to serve dessert with meals that we know have objectionable ingredients. Let's say I make a soup that turns out less than appetizing. (It happens!) I'll declare it dessert night and everyone who finishes without complaining gets dessert... parents too! I think ahead. If I can tell a storm is a-brewin', I will pull out a special treat for dessert. Any "yuck faces," gagging or complaining disqualifies the child from having that special treat. Desserts are rare in our home, so it is a very effective method of modifying my children's behavior.
I think one of the very foundational principles here is thankfulness. I want my children to be thankful for the food that is set before them. If they are not thankful for what they receive at home, how can I expect them to be thankful when we are in another home and they don't like the food served? Bottom line, we want our children to be thankful and we will not tolerate a "yuck face." We teach thankfulness at home (not just at meal time!) so that when our children are served a food they don't prefer, they can still eat it and say "thank you for the meal" when they are finished.
Hope this helps!