Something happens neurologically with nearly all children...from about age 2-6 they get a "poison-yuck-spit -it-out" response to any food that they haven't already tasted/eaten in quantity.
There are obvious evolutionary advantages to this...at about age 2 toddlers get more mobile...and having them spit out any thing that they're not consistantly fed, tends to keep them from eating poisonous things and dieing.
The unfortunate bit, is that many people give their wee ones pretty bland diets until after the age of two...which means that you're "stuck" with that diet until they're 6ish. Unfortunately again, with most people, that "yuck" response lasts for 10-20 years once they've acquired it.
You can try and "cheat" ...introducing new foods MIXED with foods that their body recognizes. This sometimes works and sometimes backfires (they start having the "yuck" response to the food that they used to love).
The best way to try and cheat is to do it reeeeeeeeaally gradually. Like adding a few drops of pineapple juice to cottage cheese one week, then a few tiny tiny minced pieces...rather than just mixing big pineapple chunks into cottage cheese. For SOME kids, you can just mix chunks of x into y and have them be fine...for others they'll out and out reject x, for others they'll then reject both x AND y. Ugh. So it's better to get just a few molecules mixed in, so they can't even taste it (but they bodies start recognize even what they can't "taste"...and slowly work into actually tasting, and then noticing texture.
For getting veggies into his diet,
a) start with "worthless" ones first...aka ones that have nearly no nutritional value (like iceberg lettuce)...or ones that have had everything cooked out of them. The more water/less nutritional value (like chopped celery in chicken noodle soup)...the fewer chemicals there are for the body to reject. Fortunately most plants that we eat have the no-nutrition cousins in the same chemical family as the high nutrition ones. So you can start out with a teaspoon of minced iceberg in a chopped chicken or turkey sandwich and work your way up to actually having lettuce on it, and then work your way up the lettuce family until you are getting ones with vitamins/nutrients in them.
b) Do the "fat" trick. Any veggie that's been steeped in fats is FAR more attractive to our bodies than one that's steamed/raw. Evolution again. So the carrots in Progresso Chicken Noodle Soup...will be FAR more attractive to little mouths/brains (not mental, remembe, but neurological) than raw carrots. Cabbage that's been boiled with corned beef for several hours and then ALSO sauteed in butter will be more attractive than coleslaw. ANYTHING cooked in bacon grease, or with bacon. A recomendation for any starchy food, btw, is to add chicken stock. So for potatoes, mash them up with chicken stock and butter. You can work your way from steeped in fats, to merely dipped, to on their own. Again. It takes a great deal of time and patience.
The fortunate thing about adding fats to veggies, is that most YOUNG kids don't get enough fats in their diets, because we're all trying to keep our fats down as adults.
ALSO
Something that's worked wonders in our house is having our son not only help cook but to help assemble.
So if I make a salad that has
- lettuce
- chicken
- salami
- cheese
- green onions
- tomatoes
- garbanzo beans
- basil
- dressing
Instead of JUST having him help tear, chop, mix, etc...We put each ingredient in a small bowl and everyone gets to make their own salad with the proportions/additions/deletions how they like. Ditto large dishes...everyone gets to help serve themselves. And yes. My son HAS from time to time served himself a MOUNTAIN of potatoes. If he doesn't eat them all...they go into a container in the fridge and he can have left overs.
Good Luck!
PS...you know...just having read through the other responses I just wanted to add 2cents:
We have a standing house rule: If you don't like it, you don't have to eat it. But I'm not going to be cooking anything else. So ANYONE at any time can have cereal, a sandwich, chef boyardee, a can of soup, etc. (I'm an adventurous cooker, so sometimes ALL of us actually break into the shrine'o'chef boyardee). In my -not so humble- opinion the nutrition is more important than where it came from. Sure skipping a meal never killed anyone...but WHY turn eating into a punishment? We don't not feed our dogs if they misbehave. Why do so many people do it with their kids? If I made a butter chicken masala...and my son would rather have chicken noodle soup...um...chicken, veggies, & starch are in both. What's the problem? MY ego? Ummmm....
Growing up we HAD to eat what my mum cooked (and like it). Dinnertime (or breakfast for that matter) could be a hideously ugly affair. If we didn't eat or act like we liked it she got horrifically offended & angry. Children starving in africa. There are sooo many problems with that. It's like telling Americans that Europeans walk everywhere so we should junk our cars. Ummmmm...In Europe I walk. In the US I drive. Sure if there was nuclear halocaust and there was only something my son hated to eat, he'd eat it or go hungry. If I have a whole pantry full of food he'd eat...why would he go hungry?
Anyhow...like I said...my 2cents