a) Generally speaking paging is done over the server, you can check that out by examining the generated SQL queries, in the VS output windows while debugging.
Please check troubleshooting
b) One query is fired once to get the total count of the rows. A second query is executed whenever you request resultset page.