A link and a hyperlink have the same function, but the difference is in the programming and the routing that are involved with the process. A hyperlink control functions as a Web server control, but a link is simply the HTML control. The difference is mostly unnoticeable for the casual user, but it is important on the programming side.
When using a hyperlink control, the user is putting a programming event model with full features to use. All the simple link feature permits is an HTML anchor. Adding a runat="server" attribute to that control permits it to be accessed using server-side code. This attribute is necessary, whichever type of link the user has in mind.
On the practical side, another difference is that a hyperlink control navigates directly to a target URL when a user clicks on it, instead of posting the form on the server. Using a link posts that form right to the server first, before going to the URL. Therefore, a link is the better choice for those who need to complete some server-side processing before heading to the final URL destination.
When deciding whether or not to use a link or hyperlink, it is important to understand the differences so that the user experience is clearer.