If you are making a Form where you require saving, reset, or validate operations, use TextFormField. Else, For Simple user input capture, TextField is sufficient. TextFormField returns a TextField, but wraps the TextField with extra functionality you can use through a Form and also without (such as reset, validation, save, etc.). In other words, TextFormField is a FormField that contains a TextField.