For that we will create a class lets saypublic delegate void DatabaseErrorEvent(object sender, NotifyEvent e);public class NotifyEvent :EventArgs{ public string Msg = string.Empty; public NotifyEvent(string Notice) { // // TODO: Add constructor logic here // this.Msg = Notice; } public string msg { get { return Msg; } }public class Worker{ public Worker() { // // TODO: Add constructor logic here // } public event DatabaseErrorEvent CriticalFailure; protected virtual void OnCriticalError(NotifyEvent e) { if (this.CriticalFailure != null) { this.CriticalFailure(this, e); } } public void DoWorkAndRaiseEvent( string Msg ) { OnCriticalError(new NotifyEvent(Msg)); }}In another Form where we want to callpublic void obj_CriticalFailure(object sender, NotifyEvent e) { //string s = e.Msg; lblInfo.Text = e.Msg; }