Forget automating any web browser. You should know already that behind the scenes there is a communication between the browser and the web server conform a protocol named Hypertext Transfer Protocol (yes, that is http). Everything you do in the browser ends up in such a data exchange.
There is a class in the framework that you can use to simulate the browser activity directly on http level:
HttpClient[
^].
Simple samples:
http://www.jayway.com/2012/03/13/httpclient-makes-get-and-post-very-simple/[
^]
Complex samples
http://blogs.msdn.com/b/webdev/archive/2012/08/26/asp-net-web-api-and-httpclient-samples.aspx[
^]
Well, it depend on the web application you are trying to fetch, how complex this interaction will be. To get better knowing the process behind, I suggest you use
Fiddler[
^]. You will have to record your steps and examine the requests sent by the browser and the answers you get. If you are lucky, there is an ajax call for the content you are looking for. If not, you will need the Agility Pack you have already tried to process the result - when, and only when you have stepped trough the logic of the application.