What differences are there between "to enhance" and "to improve"?
Using enhance to mean improve in general and, at the same time, to mean increase, is a serious annoyance to people who care about the words they choose to use. M-W online says it means "heighten, increase; especially : to increase or improve in value, quality, desirability, or attractiveness". Academic writers in all fields, however, have jumped on this buzzword and use it to mean so many things that it has no meaning at all now. It's an academic isomorph of nice.
Dictionary.com has a good example sentence of how to correctly use enhance: "to raise to a higher degree; intensify; magnify: The candlelight enhanced her beauty". She's already beautiful, but in the candlelight, she looks even more beautiful. It doesn't improve or increase her beauty: in the sunlight or the lamplight or the floodlight, she's not more beautiful because she stood in candlelight for a long time. The candlelight didn't actually increase or improve her beauty: if she was a 9 before the candlelight, she'll be a 9 after the candlelight. It merely made her look like a 10 while she was illuminated by candlelight.
Like all synonyms, sometimes they're interchangeable, but sometimes they're not. I've begun to hate the word enhance, so I almost always change it unless it's properly used in context.
To improve is to alter for the better, you remove what is not wanted and add what will make it better.
To enhance is simply to add a feature, you are not removing anything but adding something to make it stand out.
They're close in meaning but enhanced implies some existing property or ability has been extended in some way or intensified whereas something could be improved in more general ways.