The main difference involves internal memory. So for instance, a function can be described as something like an equation or formula that accepts inputs and calculates an output value. Moreover, it always returns the same output value for the same inputs. In contrast, a function block relies on internal memory.