Using the same material for two different objects.

Hello. I’m an utter noob to Unity and even the simplest things seem hard.

I’m trying to convince two spheres that are using the same material to have different shader properties.
More exactly:
I have sphere A take the “sphere” material; give it a custom shader which also allows me to customize the texture for it. I put the picture of a red flame.
I have a sphere B take the “sphere” material again and give it the same custom shader, but this time I wanna select a different texture for it. I put a picture of a sun.

I’m expecting A to have the picture of a flame and sphere B to have the picture of a sun. What happens is that when I select for B to have the picture of the sun, A also gets that picture.

The only solution I found was to give sphere B a different material.

Why is this happening? What am I doing wrong? What don’t I understand?
Thank you in advance and have a nice day guys!

I’m not an expert in the field of how materials work, but in my experience when you make a change on a material it changes that material for all objects that use it. When you assign a material to an object, it’s not creating a copy of the material there. It’s giving that object a reference to the original material. In short, if you want two separate objects to look differently, they will need separate materials because the objects do not contain copies of the materials, just references to the one material.