India will play a five-test series in England for the first time since 1959 next year followed by five one-day internationals and a Twenty20 match, the England and Wales Cricket Board (ECB) said on Monday.
The last team other than Australia to play a five-test series in England were South Africa in 2003.
"This will be the first time England has hosted India in a five-test series in more than 50 years and the length of the series reflects the iconic status which contests between these two great cricketing nations now enjoy," ECB chief executive David Collier said in a statement.
The first test will be staged at Trent Bridge starting on July 9 followed by matches at Lord's, the Rose Bowl in Southampton, Old Trafford, and the Oval.
Sri Lanka will play tests at Lord's and Headingley before the India tour.