Look to Norway.
No, seriously. Education is free, even for foreigners.
Education is free here as well.
However it would make sense to not allow people to keep student status if they fail to graduate after a number of years. Iirc it now is a set amount, but still large, while in the past one could literally stay as a student forever. In the UK, by contrast, if you failed to graduate for a second time you were kicked out of the uni. Imo allowing for 2 or at most 3 years over the normal course, for graduation, makes sense (ie 2 or 3 failures).
Alternatively, it could make sense to have fees for those who fail for more than a set number of times. I do support free uni education, though.