Typically a newer generation of chip will provide more compute power per watt, so efficiency always favors newer generations. However... this is a general rule of thumb, not always true for all comparisons.
Please be aware that TDP is NOT a measure of efficiency. It is simply a measure of how much heat the chip is rated to produce per unit of time. It's useful to determine heatsink size, but NOT for normal use power draw. A faster processor can complete a task faster, allowing the rest of the system to go back to idle more quickly. The longer the chipset, RAM and drives are kept active, the more power draw over time. Ideally you want the fastest CPU you can justify, so everything else in the system can stay at low power for longer. Newer generation CPU's are very good at sipping power when they are idle, regardless of their max capacity power draw (TDP).
Power efficiency is an extremely complex issue, CPU choice is almost never the primary factor, especially when considering CPU models in the same family.