You can call any server side control by defining runut=”server” and onServerClick for HTML button and you can not do with asp button.
<button runat="server" onserverclick="Button1_Click">click me</button>
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
protected void Button1_Click(object sender, EventArgs e)
{
}