"Prime Minister Modi will arrive on March 13 on a 3-day visit," Cabinet Spokesman and Minister Rajitha Senaratne said.
During his Lanka visit, Modi is likely to go to war-ravaged Jaffna in the Tamil-dominated Northern Province and Trincomalee in the Eastern Province, sources said.
If Modi visits Jaffna, he would be the first Indian Prime Minister to do so.
The visit comes within a month of new Sri Lankan President Maithripala Sirisena's India trip this week that saw the two countries sign a civil nuclear pact.
This was Sirisena's first foreign visit after assuming charge following a bitter presidential poll in which he defeated former president Mahinda Rajapaksa, ending his 10-year rule.
Analysts see the high-level exchange of visits as a sign of growing amity between the two neighbours and a shift in Colombo's policy that was heavily pro-China under the previous administration.
President Sirisena has pledged to pursue a more global foreign policy in a break from his predecessor Rajapaksa's pursuit of close ties with China, a key supporter of Sri Lanka's economy since its 26-year civil war ended in 2009.
India's ties with Sri Lanka had taken a hit during Rajapaksa's rule as China had expanded its footprint in the country by building ports, highways and participating in other infrastructure projects.
Prime Minister Modi and Sirisena held talks in New Delhi on Monday and signed the civil nuclear cooperation agreement seen as an effort by New Delhi to counter growing Chinese influence in the island nation.
Both the leaders also decided to expand defence and security cooperation between the two countries.
The previous bilateral visit to Sri Lanka by an Indian Prime Minister was in 1987, when Rajiv Gandhi travelled to Colombo to sign the Indo-Sri Lanka Peace Accord with the then Sri Lankan President J R Jayewardene.
Former Prime Minister Manmohan Singh was in Colombo in 2008 to attend the SAARC summit and handed over its chairmanship to the then President Rajapaksa.
Sri Lanka has been subject to three UNHRC resolutions in 2012, 2013 and 2014 over alleged rights abuses by government troops during the last phase of the war with the Liberation Tigers of Tamil Eelam (LTTE).
According to UN estimates, more than 40,000 civilians were killed in Lanka during the final phase of the conflict that ended in 2009. The Sri Lankan government disputes the UN figure.

Latest News from World News Desk