One of the commentaries I read on this section compares David’s deathbed instructions for Solomon to a scene from The Godfather. David charged Solomon,
“Do with him [Joab] what you think best, but don’t let him grow old and go to his grave in peace” (v6).
It wouldn’t take much to imagine those words in Marlon Brando’s voice. And in the end, Joab “slept with the fishes.”
That begs the question: Why didn’t David exact justice on his own? Why wait for Solomon to do it?
There’s no clear answer. Apparently, David’s delayed judgment was a form of mercy. Joab and Shimei deserved to die for their crimes, but were allowed to live through the end of David’s life. Perhaps David wanted Solomon to enact judgment to secure his own throne for himself. Part of becoming an adult is to do things on your own, especially the hard things.
But I think the delay was a result of David having a heart like God’s. David loved people deeply and, like God, delayed judgment. Perhaps he was hoping they would repent.
Whatever his reason, there comes a time when God will judge. It will be when his Son returns to rule and mete out the justice people deserve. Just like Solomon dealt with his (God’s) enemies in this chapter, so Jesus will deal with the world. We can be on the bad side like Joab, Shimei, and Abiathar, or we can be on the good side like Barzillai’s sons.