MessageBox.Show (edit)

Application.UseWaitCursor = true;
this.UseWaitCursor = true;
btnSet.Enabled = false;
Cursor.Current = Cursors.WaitCursor;

this.WindowState = FormWindowState.Normal;

//TODO: CODE HERE

Cursor.Current = Cursors.Default;
btnSet.Enabled = true;
this.UseWaitCursor = false;
Application.UseWaitCursor = false;

// Way 1
MessageBox.Show(this, Constants.IISSettingMessageDone, Constants.IISSettingCaption);

// Way 2
MessageBox.Show(Constants.IISSettingMessageDone, Constants.IISSettingCaption, MessageBoxButtons.OK, MessageBoxIcon.None, MessageBoxDefaultButton.Button1, MessageBoxOptions.DefaultDesktopOnly);

// Way 3
this.Invoke((MethodInvoker)delegate
{
MessageBox.Show(this, Constants.IISSettingMessageDone, Constants.IISSettingCaption);
});