ABC:2 Samuel 15

Verse 7
The ReasonProject lists the following as a Bible contradiction with the headline "When did Absalom rebel against David?"

2 Samuel 15:7 And it came to pass after forty years, that Absalom said unto the king, I pray thee, let me go and pay my vow, which I have vowed unto the LORD, in Hebron.

2 Samuel 5:4 David was thirty years old when he began to reign, and he reigned forty years.

There are actually more passages involved in this alleged contradiction than these, I am surprised the critic doesn't cite them. As pointed out by Floyd Nolen Jones the critic in essence is arguing that the 40 years of 2 Samuel 15:7 is inconsistent with Absalom's age since Absalom was the third child born after David moved to Hebron (2 Samuel 3:2-3) and David only reigned in Hebron for 7.5 years. (2 Samuel 2:1-11, 2 Chronicles 3:2-4)

2 Samuel 2:1 And it came to pass after this, that David enquired of the LORD, saying, Shall I go up into any of the cities of Judah? And the LORD said unto him, Go up. And David said, Whither shall I go up? And he said, Unto Hebron. 2 So David went up thither, and his two wives also, Ahinoam the Jezreelitess, and Abigail Nabal's wife the Carmelite. 3 And his men that were with him did David bring up, every man with his household: and they dwelt in the cities of Hebron. 4 And the men of Judah came, and there they anointed David king over the house of Judah. And they told David, saying, That the men of Jabeshgilead were they that buried Saul.

2 Samuel 3:2 And unto David were sons born in Hebron: and his firstborn was Amnon, of Ahinoam the Jezreelitess; 3 And his second, Chileab, of Abigail the wife of Nabal the Carmelite; and the third, Absalom the son of Maacah the daughter of Talmai king of Geshur; 4 And the fourth, Adonijah the son of Haggith; and the fifth, Shephatiah the son of Abital; 5 And the sixth, Ithream, by Eglah David's wife. These were born to David in Hebron.

1 Chronicles 3:1 Now these were the sons of David, which were born unto him in Hebron; the firstborn Amnon, of Ahinoam the Jezreelitess; the second Daniel, of Abigail the Carmelitess: 2 The third, Absalom the son of Maachah the daughter of Talmai king of Geshur: the fourth, Adonijah the son of Haggith: 3 The fifth, Shephatiah of Abital: the sixth, Ithream by Eglah his wife. 4 These six were born unto him in Hebron; and there he reigned seven years and six months: and in Jerusalem he reigned thirty and three years.

2 Samuel 5:4 David was thirty years old when he began to reign, and he reigned forty years. 5 In Hebron he reigned over Judah seven years and six months: and in Jerusalem he reigned thirty and three years over all Israel and Judah.

There are a few solutions here:

Solution 1: The 40 Years Referred to Something Else
The possibility which Floyd Nolen Jones advocates is that the 40 years of 2 Samuel 15:7 refers to something other than Absalom's birth or the time he spent preparing for a rebellion (2 Samuel 15:1-6). As Jones points out, it wouldn't have been David's age, as Absalom wouldn't have been old enough to lead a rebellion. It was likely the total amount that David reigned, not just before Absalom's birth, but after it as well.

Notice 2 Kings 2:11. At the end of David's life it is repeated that he reigned a total of 40 years. This was not just an "up to this point" number count in 2 Samuel 15:7, it was foreshadowing the total years David would end up ruling. That was actually done with the 7.5 year count as well, the year total was given throughout the narrative. (2 Samuel 2:11, 5:5; 1 Kings 2:11, 1 Chronicles 3:4, 29:27) Given the fact that the 40 year count was given at the end of David's life, AFTER he had started reigning again following Absalom's death, it thus may have included the years after Absalom's death that David reigned.

1 Kings 2:10 So David slept with his fathers, and was buried in the city of David. 11 And the days that David reigned over Israel were forty years: seven years reigned he in Hebron, and thirty and three years reigned he in Jerusalem.

1 Chronicles 29:26 Thus David the son of Jesse reigned over all Israel. 27 And the time that he reigned over Israel was forty years; seven years reigned he in Hebron, and thirty and three years reigned he in Jerusalem. 28 And he died in a good old age, full of days, riches, and honour: and Solomon his son reigned in his stead.

Solution 2: David Stayed in Hebron Before Ruling
The passages never say David's children were born while he was ruling in Hebron, only while he was there. (1 Chronicles 3:1-4, 2 Samuel 3:2-5) They never say David reigned in Hebron the entire time was there, and there was certainly a time delay between when he arrived in Hebron (2 Samuel 2:1-3) and when the men of Judah decided they wanted to appoint him king of Judah (2 Samuel 2:4). For all we know David could have been happily raising a family for a few years when his first two sons were born, and then Absalom was born the first year that he was appointed ruler of Hebron, in which case the passages would not contradict in the slightest. 30 years old would be a bit old to start having children anyway, so perhaps his first children were born a few years earlier when he first arrived in Hebron.