Solutions of $x^3 + (x+4)^2 = y^2$ I want to solve the above equation in integers. I'm pretty sure the only solutions are $(x,y) = (0, \pm 4)$ but I'm not sure how to prove it.

A subtle proof technique called proof by SageMath:
E = EllipticCurve([0,1,0,8,16])  
E.integral_points(both_signs=True)

which gives:
[(0 : -4 : 1), (0 : 4 : 1)]

where the numbers in the constructor of the EllipticCurve are the Weierstrass coefficients of the curve. For reference, the Weirstrass coefficients are defined as a list $[a_1, a_2, a_3, a_4, a_6]$ where the curve is of the form $y^2 + a_1xy + a_3y = x^3 + a_2x^2 + a_4x + a_6$.
Try it here!
I don't want to give you a non-answer but in general I don't think there is a clean way to prove these things except by using the fact that we have terminating algorithms to find the solutions. I haven't looked at this specific case too closely (there may be a neat trick), but proof by SageMath is technically sufficient.
A few buzzwords for you to continue your search if you're interested: "weirstrass equation", "elliptic curve", "finite fields".
Here are also a few math overflow answers that are slightly more detailed:
Link 1
Link 2

Edit
The context that this is an olympiad question means there should be a neater way. I've had more time to look at this so:
We want to find all integer solutions to $x^3 + (x+4)^2 = y^2$. First notice we can write this as a difference of two squares:
$$
\begin{align}
x^3 + (x+4)^2 &= y^2 \\
x^3 &= y^2 - (x+4)^2 \\
x^3 &= (y+(x+4))(y-(x+4)) \\
x^3 &= (y+x+4)(y-x-4)
\end{align}
$$
Now, since $x$ and $y$ are integers, $(y+x+4)(y-x-4)$ must be an integer factorization of $x^3$. The ways to factor $x^3$ into two factors, if $x$ is prime, are: 


*

*$x^3 \cdot 1$

*$1 \cdot x^3$

*$x \cdot x^2$

*$x^2 \cdot x$


We can simply enumerate through each of these for the factors on the RHS of our equation and see which gives integer solutions. 
For ex. if we try the third factorization, we get $(y+x+4) = x$ and $(y-x-4) = x^2$. The first equation gives $y = -4$ and substituting into the second gives $x^2 + x + 8 = 0$ which has no integer solutions and thus this factorization won't work.
If you try all of these, you will notice no integer values for $x$ or $y$ satisfy any of those factorizations. This leaves one possibility: that $x^3 = 0$ and thus $x = 0$. Evaluating this on the RHS, we get $(y+0+4)(y-0-4) = 0$ and thus:
$$
(y+4)(y-4) = 0 \\
\implies y = \pm 4
$$
Thus the only solutions are $(x, y) = (0, \pm 4)$.
Correction:
Comment is correct, this only holds for prime $x$. Perhaps develop what could be done if $x$ is not prime or show this can't be so? This might be a good starting place.
