How to attach two diff. materials (we can see first mat for two seconds, than another)

I have two materials called “m_” + theSexOfTheChatacter + “SayingNo”, where ‘theSexOfTheChatacter’ is a string with a gender of a character.
I attach this material to an object using this code:

characterConditionMat = (Material)Resources.Load("m_" + theSexOfTheChatacter + "SayingNo", typeof(Material));
        this.renderer.material = characterConditionMat;

I have a situation where I need to show right from the start the first material, than attach another material in two seconds.

IEnumerator GoAhead() {
        print("Starting " + Time.time);

        yield return StartCoroutine(SayingNo());

	yield return StartCoroutine(TakingShower());
        
    }

    IEnumerator SayingNo() {
	yield return new WaitForSeconds(2);
	characterConditionMat =(Material)Resources.Load("m_" + theSexOfTheChatacter + "SayingNo", typeof(Material));
        this.renderer.material = characterConditionMat;
        processBool = true; // can't click on other objects
        print("No " + Time.time);
    }

	IEnumerator TakingShower() {
	characterConditionMat =(Material)Resources.Load("m_" + theSexOfTheChatacter + "TakingShower", typeof(Material));
        this.renderer.material = characterConditionMat;
        processBool = true; // can't click on other objects
yield return new WaitForSeconds(2);
        print("TakeShower " + Time.time);
	}

But it doesn’t work at all in spite of the fact, that “print-function” shows that the time passed.
Why can’t I attach materials in this situation?

Thank you.

I think it will be simple if you change the texture instead of the whole material if you are only concerned about diffuse.You can change the texture in basic Diffuse material by

Texture tex_1;
Texture tex_2;
renderer.material.mainTexture=tex_1; //or tex_2

OR

renderer.material.SetTexture("property_string",tex_1);

the “property_string” of the shader can be found by examining the shader file if its a custom shader.It will be like “_MainTex”,“_BumpMap”,“_Cube” for unity inbuilt shaders.