I am taking a lot of iron properties this semester, but I have found some contradicting piece of information about the reaction of iron with nonmetals illustrated with two cases
\begin{align}\ce{ **First Case** }\\\end{align}
If we react the iron with chlorine, only FeCl3 will result as following:
$$\begin{align}\ce{2Fe +3Cl2 &->[\space \Delta ]2FeCl3}\tag{1}\\\end{align}$$
No FeCl2 has produced because iron prefers to have oxidation state at +3 as sublevel 3d will be half-filled.
One case that FeCl2 will result when H2 exists as $$\begin{align}\ce{Fe +2HCl &->FeCl2 +H2}\tag{2}\\\end{align}$$ In this situatuon if any FeCl3 formed, H2 will reduce it to FeCl2 \begin{align}\ce{ **Second Case** }\\\end{align} Although, Iron favor +3 oxidation state (as illustrated in 1), If we react iron with sulfur; it will actually favor +2 oxidation state as follows: $$\begin{align}\ce{Fe +S &->[\space \Delta ]FeS}\tag{3}\\\end{align}$$ I tried to find a convenient way that explains how this happen (as the way illustrated at 2), but
I failed to do so. I am really confused:
Does the iron actually favor +3 state or not?
If yes, Why 3 happens? Why there isn't any Fe2S3 in the products?
If no, Why 1 happens?
Is this has to do anything with some hidden conditions or unobvious reaction mechanism?