Voice acting would go a long way in making the characters alive. And no, not generic garbage either - we have enough generic companions. Every family head should be voice acted with a unique voice, and unique personality. I barely recall any lords names in all my time playing this. They're all bland and generic NPCs with expensive armor that take longer to die than the other NPCs.
Good voice acting helps, but to be honest it does become tiring after a while. For example if you go to a merchant, and have to
listen to his introductory dialog all the time. Fun first, tiring from 3rd and on.
That said, I know two games where dialog was used very well. Witcher 3 and Dragon's Dogma. Both are related to the generic extra NPCs (town drunks, merchants, town patrol, etc.).
Witcher
The game has a few lines of unique dialog per each NPC type/location/faction. Not too many, as they are extras after all. For example the smithy in the Black one's (invaders) camp has the intro "are you here to spy on us or haggle?" or similar. In a backwater village, the trader says "Corpse teeth and kidney stones...tried remedies, for trying times". It took them some time to write this, as there are probably around 100 merchants in the game, but most of them have a unique intro (after that it is general "show me your wares")
This is the same with generic peasants, town militia, etc. They all have a few lines each (5-6?), but it fits the faction very well. Eg. witch hunters comment on you being a freak, celtic-norse pirates say things like "looks you were wasted last night too"
Additional stuff: banter is a very good tool to refer to the player's achievements, and Witcher does this all the time. (eg. when you kill the ice giant, a rare random line is added about the giant wasn't even that big)
Dragon's Dogma
This is a very good solution for giving personality to otherwise generic characters. You can create two characters, your PC, and a bit later a follower (pawn). You can choose looks, occupation and sound files for the latter too, but while doing so, you only choose the sound itself (female, male, old, young, raspy, etc.), not the things it will actually tell you.
Actually, at first it is very annoying, because it always repeats a few lanes (5-6). Not as annoying as "patrolling the Mojave always makes you wish for a nuclear winter" or "arrow to the knee", but quite irritating.
But it does change rapidly:
- new dialogs are added to the "banter pool" based on shared experience (if you use a piercing weapon against armor the follower will remember, and this is added to their banter)
- new dialogs are added based on skills learned (you choose the skill, this means you also choose it's dialogs. This means archers, mages and close combat types have different banter pools)
- finally, you can have a "chat" with it in taverns, where you can add dialog options using a "fake interview" method. Eg. "you seem to me like a bloodthirsty berserker" (not these words, but similar) will add bloodthirsty lines to the banter options.
Obviously neither is as detailed as having only unique NPCs with unique dialog options. But it is still better, than having all NPCs use the same lines.