My todo's are a bit complicated, but it works. My history goes back to Franklin Planners, the paper binder things. In the recent past, I had been using a Google Tasks front end mobile app that set recurring and alarmed todos. This worked until Google introduced that functionality - but I didn't like the Google Tasks app on Android.
I tried Ticktick and found it suitable. I'm using tasks (.) org on Android currently.
I'm also toying with a bullet journal page of the week in Joplin that will have tasks for that week.
I consider categories of todos to be a feature differentiator. I have a category list for bills and payments, and another list of birthdays and anniversaries. Never have missed one in years. The other todos of a general nature are on a much larger category/list. There may be specialized lists from time to time.
I knew Joplin had some ToDo support. After the recent mastodon post, I looked at the support again in the Linux AppImage and the Android app. Shows promise, and I might be able to integrate part of my workflow, but not all of it - especially the recurring tasks.
I've also been interested how some people put tasks on their calendar. Ie, 10-10:15 "take out the garbage, every Tuesday". Given my workflow, I find it fascinating, but don't think I could do it this way at this detail. I could probably use time blocking without pain.