Just as to send the emails to the server for delivery a protocol is used (SMTP;
Simple mail transfer protocol[
^]), in a same manner, to download the emails from the server you require a similar protocol; IMAP;
Internet message access protocol[
^].
There are none built-in functions in .NET framework or Windows forms applications to let you directly send commands to a server using IMAP protocol. So, either that you need to be using a third-party plugin; which I have also used and I think you would love that library,
ImapX[
^]. Otherwise, you can use the TCP/IP streams and send requests directly to the server and work with the response (Not a good idea; use the library).
As already mentioned in the comments, you can also use the
REST API of Gmail[
^] (which will work with Gmail only; off-gmail servers won't work) to fetch messages, threads and drafts etc in a JSON format. But it won't be as much strong and powerful as much that ImapX library is, because ImapX supports IDLE events; letting you download the messages as they are recieved; like a push-notifications.