Both are correct... in the environment in which they are correct.
If I have an object that is rotating at a steady rate along a perfectly flat surface with no air friction, you are correct that there must be no force of friction. If there were, it would be an unopposed force, and the object would slow down. Because the object is not slipping, if it slows down, it has to rotate slower, which is in violation of the initial assumptions we made.
On the other hand, consider an object which is accelerating in a no-slip manner, like a ball starting to roll down a ramp. In this situation, the acceleration is increasing the required rotational speed to achieve the no-slip constraint. This means we must have a torque on the object, meaning we must have a force which does not go through the center of mass of the object. The only valid one is friction, so you are correct: there will be a friction force opposing the direction of motion because that creates the torque needed to increase the rotational rate.
The difference in the situations is the accelerations and/or other forces besides friction that are in the picture.
As for a third hand, I'd recommend a very enjoyable Smarter Every Day video about how fast things roll. It's not about exactly the same concept, but it's close. And I am always happy when a trained scientist gets confused about the things that confuse me!
In a scenario of pure rolling of a rigid wheel on a flat plane, you don't need any friction. Once the wheel is rolling, it will continue to do so, even if the friction coefficient becomes zero. If this were not the case, you'd be violating conservation of angular momentum. There is no force, no torque and therefore no work done.
The more interesting case is that where the object is rolling under an external force, say down an inclined plane. See the diagram below
Now, you can analyze it in two ways. One is similar to Farcher's answer where the point of contact moves perpendicular to the frictional force and hence, there is no work done. But you were interested in it from the point of view of torques (where we consider the whole wheel, not just the point of contact) so let's do that.
Friction does two things to the wheel as a whole. It does negative work when you look at the linear motion of the wheel. Indeed,
$$W_1 = -f.dS,$$
where $f$ is the force of friction and the wheel has moved a linear distance $dS$. Next, the friction provides a torque about the center of the wheel and the wheel has angular displacement. Hence, it does positive rotational work i.e.
$$W_2 = \tau. d\alpha,$$
where $\tau$ is the torque and $d\alpha$ is the angular displacement of the wheel. But note that $\tau = fR$ and $R d\alpha = dS$. Hence $W_2 = f.dS$ and you get
$$W_{tot} = W_1 + W_2 = 0$$
Best Answer
Consider the diagram below of a ball on a horizontal surface:
Newton's Laws tell us that if no net force acts on the ball it will remain in a constant state of motion ($v=0$ or $v=\text{constant}$). Consequently, if no net torque acts on the ball its state of rotation will also remain constant ($\omega=0$ or $\omega=\text{constant}$).
Where friction does play a part, it is usually somewhat simplistically modelled as $F_f=\mu F_n$ with $\mu$ some friction coefficient and $F_n$ the normal force (here simply $mg$). But in the case of a ball rolling with constant $v$ and constant $\omega$ and no external force (say $F$) acting on it, this would lead to deceleration according to :
$$ma=-F_f$$
But then $F_f$ would also provide torque leading to angular acceleration according to:
$$I\dot{\omega}=F_f R,$$
with $I$ the inertial moment, $R$ the radius and $\dot{\omega}=\frac{d\omega}{dt}$ the angular acceleration.
This would be the case where you launch a ball with initial speed $v$ but no angular momentum ($\omega=0$) onto a surface that provides much friction: the ball would start spinning ($\dot{\omega} > 0$ but also start decelerating ($a < 0$) and translational kinetic energy would be converted to rotational kinetic energy. If the surface can provide enough friction that process would continue until $v=\omega R$: rolling without slipping.
To keep the ball moving without any deceleration we would have to supply an external force, so that:
$$F_f=F,$$
and $a=0$.
Critical coefficient of friction $\mu_c$:
Assume a ball with $v=0, \omega=0$ at $t=0$. We now apply a horizontal force $F$, so that $a>0$.
$$F_f=\mu F_n=\mu mg$$
$$I\dot{\omega}=F_fR=\mu mgR$$
After integration we get:
$$\omega=\mu\frac{mgR}{I}t$$
In that same amount of time the ball has also acquired translational speed:
$$F-F_f=ma$$
After integration we get:
$$v=\frac{F-\mu mg}{m}t$$
Without slipping we have:
$$v=\omega R$$
$$\frac{F-\mu mg}{m}t=\mu\frac{mgR^2}{I}t$$
Reworking and isolating $\mu$ we get:
$${\mu_c=\frac{FI}{mg(I+mR^2)}}$$
This is the minimum value for the coefficient of friction in order to achieve rolling without slipping when a horizontal force $F$ is applied.