Firefox profiles are still janky and I had a lot of issue switching and managing two profiles effectively. Specifically the biggest problem I had was that clicking on work links would not open them in my last used profile (work profile). They would always open in a default profile (non-work).
I ended up keeping chrome just for work, and using firefox for personal life.
Then I grabbed Browser Tamer and set up an AHK v2 script that, when I click on and focus any browser window, it executes browser tamer's CLI to update the default browser. Thus I get the behavior of "open links in last used browser", which is the correct browser for whatever link I click 99.9% of the time.
OK, that mental overhead of "last used browser" would drive me nuts.
My solution is: The system has a default browser that opens default links. On my work machine I have a different browser where I am for example logged in to my private github account I just never want to open a clicked link there anyway. Copy/pasting 2 times per day is fine.
so youre just manually doing what i automated but that 1% of the time when it opens in the wrong browser is too much mental overhead? if youre at work and you tap a link you were almost certainly last using your work profile so its nearly always right and its not something i ever have to think about
When I want that sort of separation, which I do between work and play, I run browsers (and everything else) as different users. That works with any browser and I don't even have to worry about bugs in profile or container separation, and it reduces (though of course didn't remove) the chance of idiot here using the wrong instance for the wrong use. Heck, where possible I even use a separate machine. DayJob provide a PC on the office that I remote into (via VPN+RDC) for work purposes, so the contact point between that work and everything else is minimal (in fact my main desktop is a VM I "remote" into, I only use the base metal when I take have too which is usually things unhappy running that way (Bambu Studio and games, which do not like the lack of faf free access to the GPU)). You can still access everything from one machine, or even have the different users instances on the same desktop (this does reduce the barriers a touch though).
The only real cost is that running things this way eats more memory, but I've not experienced OOM issues for years away from deliberately small VMs (for testing or small sever tasks) that turned out to be too small.
IIRC you can use the -p flag to open that menu on launch. It also opens when you haven't set a default profile. And it's possible to access other profiles via about:profiles.