Let $f: \mathbb{R} \to \mathbb{R}$ be a continuous function such that for all $x$ we have $$f(f(x))+f(x)=x^4+3x^2+3,$$ prove that for all $x \in \mathbb{R}$, $f(-x)=f(x)$.
I noticed that $f$ cannot have any fixed points. If it had one, say $t$, we would have $$0=t^4+3t^2-2t+3=(t^2+1)^2+(t-1)^2+1$$ which is impossible. So, since $f$ is continuous, we either have $f(x)<x, \: \forall x \in \mathbb{R}$ or $f(x)>x, \: \forall x \in \mathbb{R}$. If the first were true, then we would get $$x^4+3x^2+3=f(f(x))+f(x)<f(x)+x<2x, \quad \forall x \in \mathbb{R}$$ which is absurd. So $f(x)>x, \: \forall x \in \mathbb{R}$.
Using this and the fact that $x^4+3x^2+3$ is strictly increasing on $[0, \infty)$ and strictly decreasing on $(-\infty,0]$, I managed to prove that $f$ is strictly increasing on $[0, \infty)$ and strictly decreasing on $(-\infty, 0]$. This is where I got stuck.
Edit: I think I made some progess. Suppose that there is $x_0$ such that $f(x_0)<0$. Then we get $0>f(x_0)>x_0$ and since $f$ is strictly decreasing on $(-\infty,0]$ it means that $f(0)<f(x_0)<0$, which contradicts $f(0)>0$. So $f(x) \geq 0, \: \forall x \in \mathbb{R}$
Now, suppose $f(x)>f(-x)>0$, for $x \neq 0$. Then $f(f(x))>f(f(-x))$ and summing these yields a contradiction with the hypothesis. The same happens if we suppose $0<f(x)<f(-x)$. So $f(x)=f(-x), \: \forall x \in \mathbb{R}$.
Since you have proved that $f$ is strictly increasing on $[0, +\infty)$, from $$f(f(x)) + f(x) = x^4 + 3x^2 + 4 \quad (\forall x > 0)$$ it is not difficult to prove by contradiction that$$ \lim_{x \to +\infty} f(x) = +\infty. $$ Analogously,$$ \lim_{x \to -\infty} f(x) = +\infty. $$
Now for any $x > 0$, since $f$ is continuous, $f(x) > f(0)$, and $\lim\limits_{x \to -\infty} f(x) = +\infty$, there exists $y < 0$ such that $f(y) = f(x)$. Therefore,$$ x^4 + 3x^2 + 3 = f(f(x)) + f(x) = f(f(y)) + f(y) = y^4 + 3y^2 + 3. $$ Note that $x > 0 > y$ and$$ 0 = (x^4 + 3x^2 + 3) - (y^4 + 3y^2 + 3) = (x - y)(x + y)(x^2 + y^2 + 3), $$ therefore $y = -x$. Thus $f(x) = f(-x)$.