Let's say I want to solve a system of four equations in six variables. In doing so, I want to describe the infinite solution set. The way I know to do this with row reduction is: row-reduce to reduced-row echelon form, and write the "leading" variables (columns whose corresponding row-reduced column was pivotal) in terms of the "free" variables (columns whose corresponded row-reduced column was not pivotal). By doing that, I can describe an infinite solution set.
My question is: let's say that I were solving this system in a way that didn't involve row reduction. Let's say I were trying to use substitution/elimination. How would I know which of the variables can be expressed in terms of the others, and which ones I should use to present the solution? In fact, without row reduction, I don't think I would know what the dimension of the column space is, so I wouldn't know how many variables are leading and how many are free.
While user2661923 is correct, substitution/elmination is a process analogous to row reduction. In fact, it essentially is row reduction. And it will tell you when variables are leading or free.
Let me add one more equation to each of user2661923's examples: $z-y = 7$.
So we have two equations in common to all three sets$$x + y = 4\\z - y = 7$$
Since $y$ is common to both, we can choose to solve the other two in terms of $y$: $$x = 4 - y\\z = 7 + y$$ Then we substitute into the other equation, which is different for each set:
So it all came out from the substitutions. $y$ is free, and the others are dependent.
But, you say, I could have solved for a different variable at the start. Yes, I could have, and it would lead to the exact same solutions for the first two problems. In the third one, depending on whether I solved originally for $x$ or $z$, I would have gotten solution sets $$\{(x, 4 - x, 11 - x)\mid x \in \Bbb R\}\\ \{(11 - z, z - 7, z)\mid z \in \Bbb R\}$$ with $x$ or $z$ as the free variable. So which variable is "free" was a choice I made. And that is correct.
But the same thing is true of row reduction. You could rearrange the columns of the matrix, perform row reduction on the new arrangement, the swap the columns back to their original order to get a solution with different "free" and "leading" variables. The only reason row reduction gives the particular free and leading variables it does is because of an arbitrary choice you made in which column should represent which variable.
And something similar will be true of any other method you use to solve the problem. You will make arbitrary choices, anc at some point in the process you will either run into a contradiction, or you will run out of equations. If you do not run into a contradiction, the "leading" variables (more accurately, the "dependent" variables - "leading" is a terminology specific to row reduction) will be those that have been expressed as constants or in terms of others, and the free (aka "independent") variables will be those that have not. If there are no free variables, then the solution is unique. And different arbitrary choices during the process will result in different variables being considered "free".