How to make my label fade after 2 sec?

i want to create a label that will show on a certain condition and will fade after 2 sec just like for example on the online game the damage that comes out then fades out … how can i do that by the way im using c# please help me thank you

public class LabelDisplay : MonoBehaviour
{
public float DisplayTime = 2; // Will be displayed for 2 seconds.
public float FadeoutTime = 1; // Will fade out afterwards for 1 second.

	private bool displayTimePassed = false;
	private bool fadeOutTimePassed = false;
	private bool isShown = false;
	float elapsedTime = 0f;
	float labelAlpha = 1f;
	
	private string TextToShow = "Demo";
	void Update() 
	{
	   if (isShown)
	   {
			elapsedTime += Time.deltaTime;
			if (!displayTimePassed) // We still haven't finished displaying the "full opacity version"
			{
				if (elapsedTime > DisplayTime)
				{
				   elapsedTime = 0;
				   displayTimePassed = true;
				}
			} else if (!fadeOutTimePassed) // We still haven't finished displaying the fade-out.
			{
				labelAlpha = (float) ((FadeoutTime - elapsedTime) / FadeoutTime);
				if (elapsedTime > FadeoutTime)
				{
				   elapsedTime = 0;
				   fadeOutTimePassed = true;
				}
			} else // Display and fadeout have passed.
			{
				isShown = false;
				// Possibly destroy object when done?
				// Destroy(gameObject); 
				// NOTE : This must be a clone object (created via Instantiate call) so that you don't destroy the main Label prefab.
				// If you destroy the "original" prefab you cannot instantiate that kind of prefabs anymore.
			}
	    }
	}

	public void Show(string text)
	{
		TextToShow = text;
		isShown = true;
		// Possibly refresh intervals?
		// displayTimePassed = false;
		// fadeOutTimePassed = false;
		// elapsedTime = 0f;
	}
	// Possible overrides Show(string text, displayTime , fadeouttime)

	void OnGUI()
	{
		if (isShown)
		{
			if (Mathf.Approximately(labelAlpha, 1f))
			{
				GUI.Label (Rect(0,0,<your width>, <your height>), TextToShow) ;
			} else 
			{
				// Set alpha before label draw (for fade)
				GUI.color.a = labelAlpha;
				GUI.Label (Rect(0,0,<your width>, <your height>), TextToShow) ;
				GUI.color.a = 1f;
			}
		}
	}
}

However for a more future-proof solution ( GUI framework ) i recommend using NGUI, or if you already use it , you should take a look at HudText