As DGDobrev said long ago it all depends what game you play : class, army, playstyle . . .
Companion is important as for his passive bonus, and skills (moro dark upgrading knights into black knights , jimmy kraud upgrading pirates etc) but more important are his item slots because those you can change between battles and depending of next quest/problem you need to pass.
For high lvl run, elenhel is only choice, for black knight unlimited retaliation build moro dark is a must , for impy`s 14 battle end game jimmy kraud with blood potion . . .
@Vecna For undead army moro is great companion, but if you wanted to get splinter of darkness item for set you must play with no undead units in you`re army until you get item, and after that if you find all undead set changing moro for agraves is better option.
But it`s all fro fun and game, and not every1 play for impossible/no loss. So just go around and try different things to see what you like most in this great game