It is true that warlock invocations are not as powerful as the highest level spells, and it is true that the prestige class choices are more limited. However, aside from the fact that invocations don't require rest, the warlock also has eldritch blast, which doesn't require rest either. Whether a wizard or a warlock is a better choice depends on circumstances. If the battle can be won by a few powerful blasts, then the wizard is better by far. But in a war of attrition kind of battle, a warlock could still be fighting with equal strength long after a wizard had exhausted all the higher level spells.