My only complaint with in session leveling is that there always seem to be that one player who goes deep into the tank deciding what spell to take or whatever and it bogs the whole session down. Less of an issue with more exerienced players likely, but that's why I tend to do it at the end or in between sessions (the actual paperwork part).
Interesting. I get the opposite impression, tbh. IIRC, using XP awards with default rests and recommended XP/per day in the DMG, a party levels from 1 to 20 in a little over one month. (I'm new to 5e, though, so perhaps I did the numbers wrong?) Granted, there could be long lulls between adventures, but in general 5e seems to be designed with the assumption that powering up happens really, really fast by default.While I prefer and like the idea of how Milestone leveling and how it can be nice if a certain achievement is done, it feels like you'd level up to 20 real quick if you go straight milestoning.
And while I don't mind XP handling, well I really like the other option.
Now, almost all my other campaigns have immediate level up once the PC acquires the XP they need to level (which is gotten through combat and social interaction challenges). It takes two minutes to do during the session, particularly as players are encouraged to think about what they want for their next level prior to it happening. But I'm choosing downtime leveling paid for by gold for the reasons stated above for the next campaign. I don't recommend it for every campaign.
Did your players receive full health and spent spell slots back when levelling this way especially if during a dungeon crawl? Or did they gain increased maximum health, keeping their current hp and same for spell slots?