I’m late on this one, but since this question comes quite frequently in our teams too:
rule of thumbs: use f-strings if you’re sure all your users will support it (i.e. if you create a package, then the lowest version you support might be a criteria here)
But if you can, f-strings are shorter, easier to read, and faster at runtime. There’s no good reason to not use them whenever you can. (re the speed, I don’t have the links here, but google will give you benchmarks about it)
The only time I switch back to the .format() stuff is when them we need to build templates dynamically.