Let $$X(y) = E[f(\xi, \eta)| \eta = y]$$ and $$Y(y, z) = E[f(\xi, z)|\eta=y]$$ Here $\xi, \eta$ are random variables and $f$ is a function of two variables.
I'd like to prove that $$Y(y, y) = X(y)$$ which is very often used without any comments.
If I rewrite the above equality without any renaming it becomes $$E[f(\xi,\eta)|\eta = y] = E[f(\xi,y)|\eta=y]$$ which is tempting to consider obvious, but when I formally tried to prove it, it turned out to be quite challenging. Perhaps there is a way to see why this is true without diving into formal definitions?
P.S. It seems that this question has been asked before, but it was poorly formulated and the answer is not satisfactory, because it basically says that it is obvious.
You already mention that in the discrete case, assuming $P(\eta=y)>0$, we can write a simple formula $$ E[f(\xi,\eta)|\eta=y] = \frac{E[f(\xi,\eta)1_{\{\eta=y\}}]}{P(\eta=y)}, \quad (\ast) $$ and it is clear that on the event $\{\eta=y\}$, we have $f(\xi,\eta)=f(\xi,y)$, so this is the same as $E[f(\eta,y)|\eta=y]$.
Let's modify this formula slightly. Using $(\ast)$, we can calculate \begin{align*} E[E[f(\xi,\eta)|\eta=y]1_{\{\eta=y\}}] &= E\left[\frac{E[f(\xi,\eta)1_{\{\eta=y\}}]}{P(\eta=y)}1_{\{\eta=y\}}\right] \\ &= \frac{E[f(\xi,\eta)1_{\{\eta=y\}}]}{P(\eta=y)} \cdot P(\eta=y) \\ &= E[f(\xi,\eta)1_{\{\eta=y\}}]. \end{align*} In other words, the conditional expectation $E[f(\xi,\eta)|\eta=y]$ satisfies $$ E[E[f(\xi,\eta)|\eta=y]1_{\{\eta=y\}}] = E[f(\xi,\eta)1_{\{\eta=y\}}]. \quad (\ast\ast) $$ This expression is simply saying that the average of $E[f(\xi,\eta)|\eta=y]$, computed over only the part of the sample space where $\eta=y$, will be the average of $f(\xi,\eta)$ on that part of the sample space. This seems like a natural property, and this is how this conditional expectation is formally defined for a general distribution $\eta$. In other words, $E[f(\xi,\eta)|\eta=y]$ is the quantity that is uniquely determined by the averaging property in $(\ast\ast)$.
With this definition, you can easily compute $$ E[E[f(\xi,\eta)|\eta=y]1_{\{\eta=y\}}] = E[f(\xi,\eta)1_{\{\eta=y\}}] = E[f(\xi,y)1_{\{\eta=y\}}] = E[E[f(\xi,y)|\eta=y]1_{\{\eta=y\}}], $$ and so $E[f(\xi,\eta)|\eta=y]$ and $E[f(\xi,y)|\eta=y]$ are the same conditional expectation.
I don't know if this answer is satisfying, but the above is meant to illustrate that the basic argument for the discrete case in $(\ast)$ works for the general case. You just need to write things a little differently to avoid problems with $P(\eta=y)$ being zero. So if you feel comfortable with $(\ast)$, basically the same applies in the general case with the correct formalism.