We all know our pages need to be created dynamic, .NET provides some good inbuilt controls which does same thing specifically framework 2.0 included lots of handy controls to build you page quickly
I usually pick the Repeater control, to render simple or complex table, why because its very simple and main reason is its faster and light weighted. There are limitation of Repeater, like it does not have inbuilt functionality for Paging and Sorting.
We can add the functionality of Paging and Sorting by our own, I wrote an article on Extended Repeater, having Sorting and Paging support with very less effort. It uses PagedDataSource I am sure its very new to you! But it’s now new it was there as in framework 1.1!
You can find the article here, I have explained all important code logic and also you can download the sample code there.