The main stock index ended up 0.32 percent, or 19.18 points, at 5,972.37, its highest close since Jan. 4, 2012.
Shares have been rising on hopes of a fall in interest rates after Treasury Secretary P.B. Jayasundera and the central bank said official interest rates could ease in May-June.
The market has risen 3.4 percent through Thursday since the treasury secretary's comments on April 9.
The turnover was 634.58 million rupees ($5.01 million), well below this year's daily average of 963.9 million rupees.
Foreign investors were net buyers of 98.97 million rupees of shares, extending the net foreign inflow so far this year to 8.88 billion rupees ($70.06 million). Last year, the bourse saw a net inflow of $303 million.
The rupee ended firmer at 126.10/20 per dollar from Tuesday's close of 126.70/75 on exporter dollar sales, currency dealers said.
Both share and currency markets were close for a holiday on Wednesday in lieu of International Labour day. ($1 = 126.7500 Sri Lanka rupees)
(Reporting by Ranga Sirilal and Shihar Aneez; Editing by Sanjeev Miglani)
(Reuters Messaging: firstname.lastname@example.org)(twitter.com/rangab a)