Solution:
We begin with the standard factorisation
y4+4=(y2−2y+2)(y2+2y+2)
Thus we have y2−2y+2=pm and y2+2y+2=pn for some positive integers m and n such that m+n=x. Since y2−2y+2<y2+2y+2, we have m<n so that pm divides pn. Thus y2−2y+2 divides y2+2y+2. Writing y2+2y+2=y2−2y+2+4y, we infer that y2−2y+2 divides 4y and hence y2−2y+2 divides 4y2. But
4y2=4(y2−2y+2)+8(y−1)
Thus y2−2y+2 divides 8(y−1). Since y2−2y+2 divides both 4y and 8(y−1), we conclude that it also divides 8. This gives y2−2y+2=1,2,4 or 8.
If y2−2y+2=1, then y=1 and y4+4=5, giving p=5 and x=1. If y2−2y+2=2, then y2−2y=0 giving y=2. But then y4+4=20 is not the power of a prime. The equations y2−2y+2=4 and y2−2y+2=8 have no integer solutions. We conclude that (p,x,y)=(5,1,1) is the only solution.
Alternatively, using y2−2y+2=pm and y2+2y+2=pn, we may get
4y=pm(pn−m−1)
If m>0, then p divides 4 or y. If p divides 4, then p=2. If p divides y, then y2−2y+2=pm shows that p divides 2 and hence p=2. But then 2x=y4+4, which shows that y is even. Taking y=2z, we get 2x−2=4z4+1. This implies that z=0 and hence y=0, which is a contradiction. Thus m=0 and y2−2y+2=1. This gives y=1 and hence p=5,x=1.