I'm going to expand on my comments and given a more complete answer.
So far we have that $\newcommand\hofib{\operatorname{hofib}}\hofib(f)\to X$ is a Hurewicz fibration, because it's the pullback of a Hurewicz fibration. Moreover its fiber $F$ is the same as the fiber of $PY\to Y$. This is a general fact that follows from pullback pasting.
Consider the following diagram where $x\in X$ is a point, and both squares are pullbacks.
$$
\require{AMScd}
\begin{CD}
F @>>> f^*P @>>> P\\
@VVV @VVV @VVV\\
x @>>> X @>>> Y
\end{CD}
$$
In this case $F$ is the fiber of $f^*P$ over $x$. However the outer square is also a pullback, by pullback pasting, so $F$ is also the fiber of $P$ over $f(x)$.
So the fiber of $\hofib(f)\to X$ is $\Omega Y$. All we need to do now is show that the fiber of a Hurewicz fibration is weakly equivalent to its homotopy fiber, where the homotopy fiber is defined by pulling back the path space of the codomain to the domain.
Let's assume then that $f:X\to Y$ is some general Hurewicz fibration (of pointed spaces). Let $F=f^{-1}(*)$ be the point-set fiber of $f$. Let $G = \hofib(f) = f^* PY$. We want to produce a homotopy equivalence between $F$ and $G$. For $PY$ I'm going to assume that we take paths that end at $*$ to fix a convention. Concretely then as a set, $G$ is the set of pairs $(x, \alpha)$ where $x\in X$ and $\alpha : I\to Y$ satisfies $\alpha(0)=f(x)$ and $\alpha(1)=*$.
First of all, we always have a map $i:F\to G$, given by $x\mapsto (x,*)$, where $*\in PY$ denotes the constant path at the base point. To get a map $G\to F$ we need to use the fact that $f$ is a Hurewicz fibration. Consider the square
$$
\begin{CD}
G @>\pi_1>> X \\
@VG\times \{0\}VV @VVfV \\
G\times I @>>\operatorname{ev}> Y,
\end{CD}
$$
where the bottom map is $(x,\alpha,t)\mapsto \alpha(t)$.
The fact that this square commutes is the fact that if $(x,\alpha)\in G$, then $f(x) = \alpha(0)$.
Thus there exists a lift $H:G\times I \to X$. $H_0=\pi_1$, and $f\circ H_1 = *$, since $\alpha(1)=*$ for all $(x,\alpha)\in G$. Thus $H_1$ actually lands in the fiber, $F$. For convenience let's let $h=H_1$. Let's keep in mind for later use that $H$ is a homotopy between $\pi_1$ and $h$.
We now have $i:F\to G$ and $h:G\to F$. We just need to check that these maps are homotopy inverses of each other. Now $h\circ i$ is homotopic to $\pi_1\circ i$, but $\pi_1\circ i = 1_F$ by definition of $i$. For the other composition $i\circ h$, consider some element $(x,\alpha)\in G$. $h(x,\alpha) = x'$ for some $x'\in F$, and $H(x,\alpha,-)$ is a path from $x$ to $x'$ in $X$ lifting $\alpha$. This gives a path in $G$ from $(x', *)$ to $(x,\alpha)$ by $t\mapsto (H(x,\alpha,t), s\mapsto \alpha(t+s)$ (extend $\alpha$ so that $\alpha(t+s)=*$ when $t+s>1$). But this is a homotopy from $1_G$ to $i\circ h$:
$$
(g,t)\mapsto \left(H(g,t), s\mapsto \operatorname{ev}(g,t+s)\right),
$$
as desired.
Best Answer
There is no need for a free action on $X$ since we are using homotopy orbits.
Pick a fiber bundle model of $EG \rightarrow BG$. Take local trivializations. Now if we cross the fiber with $X$, then we get a local trivialization of $G \times X \rightarrow EG \times X \rightarrow BG$ by again crossing with $X$. Now one may take a quotient by $G$. This results in the total space $EG \times X /G$ which is by definition $X_{hG}$. But since the quotient could just as well be taken fiberwise , we may also use our local trivializations and see that the result is a fiber bundle with fiber $(G \times X) /G \cong X$. Hence, we have a fiber bundle $X \rightarrow X_{hG} \rightarrow BG$.