Quick synopsis of this chapter:
David raised his people up to go into battle against Israel and the followers of Absalom. He put his commanders in charge of different sections of men, but when he wanted to go into battle with his men, they refused and told him to stay out of harm's way. David though left explicit orders that his son should not be killed.
So the battle is waged in the woods and the dangers of the forest prove to take the lives of many of the Israelites more so than the swords of David's men...similar to Robin Hood where the woodsmen use the forest as a tactical advantage. Absalom even rode his Mule into an Oak tree and got his head stuck so that he was just hanging there. One of David's men went to tell Joab this to which Joab asked, "Why didn't you kill him?" The man replied that he would not go against the orders of the king.
So...Joab took matters into his own hands and killed Absalom.
After the battle 2 messengers were sent to David. The first was not to tell David of Absalom's whereabouts while the 2nd messenger did. Perhaps this was done to lesson the blow to David at hearing the death of his son (a good news, bad news situation) or perhaps this was Joab scheming to not get in trouble for killing Absalom. In essence, by sending two messengers, Joab made it seem like they discovered Absalom dead after the battle was over, not that someone had purposely killed him in battle.
David then began weeping at the death of his son.