It seems that current "best practice" for installing #python 3.11 on a recent debian build.. is to build it from source.. (no binary packages available) (doing this as part of a Docker build for added joy).. The #dotnet install is two lines for the latest version.
You can generally safely use the "deadsnakes" ppa/repo to install alternate Pythons, even though they're primarily an Ubuntu thing.
One caution, which bit me when #Debian 12 was released - before doing a major Debian upgrade that bumps the default Python to one you have installed from #deadsnakes, remove the deadsnakes version first. I got ... interesting breakage that took me a bit to figure out the right fix for.
#Lesson learned; perhaps this will save someone else some time.
If you have #Python 3.11 installed on Bullseye from the "#deadsnakes" ppa, uninstall it before attempting the upgrade. It conflicts with the Python 3.11 package in Bookworm in a way that causes the upgrade to #fail partway through. Then you have to manually fix it all...