When it comes to todo lists I really prefer nested checkboxes, like Dynalist[0] has. That enables me to make a list of projects, where each project has their own todo items, and maybe they have sub items, and so on. I like being able to divide stuff into smaller and smaller chunks, and then checking them off as I go.

[0] https://dynalist.io/

Yeah, this is why i use Vimwiki[0] both for notes and todo lists. Nested checkboxes and easy navigation through page links. It is vim specific though so that might be a problem for some.

[0] https://github.com/vimwiki/vimwiki