Basic answer in terms of efficiency - the more lead-footed and heedless of efficiency you are, the better off you are with Eco. Hypermilers can do slightly better in D. So it depends on your driving style, and conditions (terrain).
There are other reasons to use Eco mode. For me, the throttle-mapping in Eco feels much better and easier to control. To me this is normally far more important than the efficiency issue. I can hypermile if necessary, regardless of the setting. I can also have 100% power any time I want, by pushing the pedal down. The car is not "faster" in D mode, despite peoples' butt-dyno conclusions.
Eco also puts limits on power consumption for climate control. So about the only time I turn it off is when I need a fast warm-up or cool-down of the cabin. And, VERY RARELY, I'll use D if I am trying to squeeze every watt-hour for all it's worth...