Sri Lanka Cricket said in a media release on Wednesday Dilshan would hold a news conference on Thursday to officially announce his retirement.
"I have decided to take this decision to allow Sri Lanka cricket to groom another youngster in my place," said Dilshan.
"I was to announce my retirement after the Zimbabwe Test series but unfortunately the tour was postponed."
Sri Lanka were to play two Tests on their tour of Zimbabwe from October.
The aggressive opener made his Test debut in 1999 against Zimbabwe at Bulawayo and appeared in 87 Tests. In an international career spanning 14 years Dilshan scored 5,492 runs at an average of 40.98.
His 16 Test centuries included a career best 193 against England at Lord's in 2011 as captain.
The 36-year-old will continue to play in the shorter 50 overs and Twenty20 formats for his country.
"I will discuss my future with the national selectors and if they need me I will play till the 2015 World Cup," he said.
Image: Tillakaratne Dilshan
Photograph: Brendon Thorne/Getty Images
'However rich or poor she may be, India has the best looking women'
BEST Sports Photos of the Week!
ODI rankings: India continues its reign; Kohli, MSD among top-ten batsmen
Hafeez axed from Pakistan Test squad
Stats: Finch, Gayle dominate T20 batting records