Vanuit mijn ervaring is paging altijd sneller als het aan de database wordt overgelaten. Er is immers een database gebouwd om enorme hoeveelheden gegevens op te vragen en te manipuleren.
Als u grote hoeveelheden gegevens in .NET retourneert en deze tijdens een sessie in de cache plaatst, heeft u snel onvoldoende geheugen op uw server.