Free symbols (or free variables) are variables that are not "dummy variables" (or bound variables). In terms of an integral, the integration variable of a definite integral is not free, since Integral(f(x), (x, 0, 1)) == Integral(f(y), (y, 0, 1)) mathematically. This means that Integral(f(x), (x, 0, 1)) does not really "depend" on x as a variable.
This matters for differentiation as Integral(f(x), (x, a, b)).diff(x) is 0, regardless of what f is, *unless* a or b contains x, as then x would be free (Integral(f(x), (x, 0, x)) *does* depend on x). It's usually a bad idea to use the same variable as both a dummy variable of integration and a free symbol in the integration limits, but SymPy allows it. However, if you avoid doing it, then this issue will never really come up, and you'll avoid confusion.
Aaron Meurer