Using WaitForSeconds() in Awake() or Start()

Is there any way to yield a bit of time such as WaitForSeconds() within Awake() or Start() in C#? This is possible in JS, but I need it to work in C#. Any ideas?

It is definitely possible in C#, you just need to modify the syntax a little. All you have to do is change the return type from 'void' to 'IEnumerator', and it will work fine.

IEnumerator Start()
    yield return new WaitForSeconds(4);
    Debug.Log("This happens four seconds after instantiation!");

EDIT: whoops, made a mistake with syntax. Should work now. What version of Unity are you using? Also, you should post comments in the comments section, not as answers.

I usually just use StartCoroutine inside of Start, but that's probably just personal preference since this works just as well.