This was Royal's fourth defeat this season. They lost earlier to Dharmapala, Thurstan and St. Sebastian's too.
Nalanda who beat Royal last year, too, at Campbell Park, must thank burly right-hand opener Danushka Fernando for this great win. He made a superb 120 and bating with a runner, slammed 13 boundaries off 143 deliveries in 200 minutes. He was involved in a 116-run first wicket partnership with Sanjaya Rodrigo, who was also run out for 40. Then, Fernando together with S. Kalawitigoda (26) put on 76 runs for the second wicket. Fernando's first 50 came in 115 minutes and the second in exactly 50 minutes.
After Nalanda who were 99 for 9 overnight, were all out for 111, Royal in their second turn declared at 152 for 7. Thushan Amarasuriya (20) and Lasantha Liyanage (33) made 60 runs for the second wicket, while Umesh Gunawardene (37 not out) and Venura Tillekeratne (21) made 46 runs for the seventh wicket.
Royal 193 in 56.3 overs (Anuk Samarakoddy 14, Ruchira Jayasuriya 64, Janaka Gajanayake 14, Venura Tillekeratne 40, Harith Rajakaruna not out 20, Niranjan Kumara 4 for 48, Ishara Amarasinghe 2 for 57, Dantila Dayaratne 2 for 46) and 152 for 7 declared in 41 overs (Thushan Amarasuriya 20, Lasantha Liyanage 33, Umesh Gunawardene not out 37, Venura Tillekeratne 21, Niranjan Kumara 2 for 37, Dantila Dayaratne 2 for 45).
Nalanda 111 in 39 overs (Danushka Fernando 11, Mevan Porage 38, Seevali Dissanayake 23, Anuk Samarakoddy 2 for 24, Asanga Sanjeewa 2 for 21, Venura Tillekeratne 2 for 20, Umesh Gunawardene 2 for 10) and 235 for 4 at close (Sanjaya Rodrigo 40, Danushka Fernando 120, S. Kalawitigoda 26, Danuka Dayaratne not out 12, Mevan Porage 10).