Yo soy una estudiante del español y lo que aprendí es:
estar = se usa por estados o sentimientos que van a terminar en algún momento. Por ejemplo: estoy bien, estoy enferma, estoy aburrida, estoy de mal humor...etc
ser = se usa por adjetivos, trabajos, nacionalidades, o para explicar como soy como una persona en general.
Este es un buen ejemplo para distinguir entre los dos:
Estoy contenta: en este contexto significa que hay algo que me pone contenta en este momento, pero no significa que soy una person feliz en general.
Soy contenta: como una persona siempre me siento contenta con mi vida.
espero que este explicación haya sido útil.