WebRequest objects have an
IfModifiedSince property that handles setting the If-Modified-Since header for you.
EDIT: BTW, the example on that page makes absolutely no sense to me.
EDIT2: There's a
UserAgent property too. Here's the list of
HttpWebRequest.Headers properties.
EDIT3: And here's the
HttpWebResponse.Headers properties. Note LastModified is there.
EDIT4:
So you can do...
req.UserAgent = strIEUserAgent;
req.IfModifiedSince = dateLastModificationIKnowAbout;
...
dateLastModificationIKnowAbout = resp.LastModified;
EDIT5:
For completeness...
Suppose you set IfModifiedSince.
If the content has not been modified, the server should send back a response with
Status Code 304 Not Modified.
Otherwise you can assume either

the content was modified or (b) the server doesn't support If-Modified-Since for that page.
EDIT6:
To wit:
if (resp.StatusCode = HttpStatusCode.NotModified)
{
// no changes since If-Modified-Since
}
else
{
// new content... pull from resp
}
EDIT7: Emailed a proposed new example skeleton to the feedback link on the page referenced in the first edit