Why do our hands feel warm when we rub them? Our hands are the most common source for measuring heat transfer$^{\dagger}$ in our day-to-day life (they do not measure temperature, though they do indicate relative temperature). Now consider the following:


*

*When we rub our hands their temperature rises due to the friction. Now if there is equal increment in the temperature of both the hands then there should be no flow of heat (zeroth law of thermodynamics).


Hence we should feel no difference than usual as there is no heat, rather due to there being a temperature gradient heat should flow out of our hands to surrounding and our hands should feel cooler (assuming that surrounding has same temperature as our normal body temperature).
So


*

*why do our hands feel warm when we rub them?


One possible explanation is that one of the hand gets slightly warmer than the other and hence there is a heat flow from one to other and hence we feel hot. But there is a problem that if that were the case then we would get an alternating hot and cold sensation, which isn't what is observed. 

$\dagger$ It is a common misconception that our hands measure the temperature. Rather they measure the heat flow (which is an indicator of relative temperature). Related: Veritasium: Misconceptions About Heat.

Also note that I know that the increment in temperature is due to the friction so no explanations needed for that. 
 A: The frictional heat generated in the contact area between our hands flows roughly equally to each hand.  The interface gets hotter, and there is a heat flow by conduction away from the interface in both directions.  At the interface itself, there is a discontinuity in the heat flux, with opposite signs to the two fluxes.  The difference between the two heat fluxes is the frictional heat generation rate per unit area.  So we have $$\left[-k\frac{dT}{dx}\right]^+-\left[-k\frac{dT}{dx}\right]^-=q_{gen}$$So, $$\left[-k\frac{dT}{dx}\right]^+=\frac{q_{gen}}{2}$$and$$\left[k\frac{dT}{dx}\right]^-=\frac{q_{gen}}{2}$$
As a result of all this, the temperature is highest at the interface (higher than the bulk of your hands), and this is what you sense as your skin temperature.
A: As long as the nerve endings and the skin cells in its neighbourhood aren’t in equilibrium, there will be a sensation of heat. This of course is an oversimplification because there’s the case of sensitivity. 

One possible explanation is that one of the hand gets slightly warmer than the other and hence there is a heat flow from one to other and hence we feel hot. 

You almost got it there! Zeroth law is true for bodies in equilibrium. However, when heat is generated by rubbing hands together, the heating in each hand is uneven. This is obvious because the roughness of the hands are uneven and they are in motion. And the unevenness is present between the layers of your skin as well. This creates a gradient in the temperature in your hand. So each hand in itself has regions that are slightly warmer than the others. 
But as soon as equilibrium is reached (smoothness in temperature finer than our resolving power), we can no longer feel the heat. 
A: 
When we rub our hands their temperature rises due to the friction.

Correct. Energy is transferred to the surface of the skin (epidermis) due to friction work which elevates the temperature of the epidermis of both hands.

Now if there is equal increment in the temperature of both the hands
  then there should be no flow of heat (zeroth law of thermodynamics).

If the temperature of the epidermis of each hand is the same, then theoretically there would be no heat transfer between the hands. But there is heat transfer within each hand from the epidermis to the dermis layer of the skin, discussed below.

Hence we should feel no difference than usual as there is no heat,
  rather due to there being a temperature gradient heat should flow out
  of our hands to surrounding and our hands should feel cooler (assuming
  that surrounding has same temperature as our normal body temperature).

The reason our hands feel warmer is the elevated temperature at the surface of the skin, the epidermis, due to the friction work, is greater than the normal temperature of the dermis located below, so that heat transfers to the dermis where the nerve endings sensing heat are located.
Hope this helps.
A: It could be because of energy changes that occur as a result of friction. When we rub our hands, potential energy, which we initially have, gets converted to kinetic energy, due to motion. The friction between the skin in our hands mean that this kinetic energy is transformed to electric energy and our hands feel naturally warmer. And yes, this 'generated' heat does flow out of our hands, into the surroundings, when our hands become warmer, which is why the rate at which they get heated up becomes slower, when they are already at a certain temperature. Heat flow does not happen between the hands rather from the hands to the surroundings. This, I believe, is why our hands get warmer, when we rub them.
A: Yes,I think you are right in saying both hands are at same temperature(as they are under symmetric motions) so no heat flows.
But that does not mean you should not feel warm. Note that   your skin temperature is now higher than normal body temperature(37°C).
So I think that "warmth" you feel is your skin cells responding to elevation in temperature. (although I think a biologist verfication should help)
(and yes heat does flow to surrounding which you can notice clearly as you stop rubbing)
Also I think the zeroth law is irrelevant as almost no heat is being "transferred" but rather you are "generating' heat.
Thanks for this amazing question!
Please edit this answer to make it correct based on reliable sources(as I think I am assuming a lot of things)
