Between 4 and 5 hours. We start promptly at 7 pm with going over lifestyle expenses, downtime activities, and a discussion about the party's goals for that session. Then the party sets out for the dungeon at which point we resolve the traveling phase - weather, marching order, set pace, exploration tasks, check for random encounter.
Once at the dungeon, the party explores until about 11 to 11:30 pm at which point the Thrice-Damned Horn sounds, heralding the return of the dungeon to a parallel dimension known as The Shade. This means the characters have to book it out of the dungeon before they're sucked into that dread realm. Once out, they typically just head back to town, sometimes with a short rest beforehand if they're beat up. This kicks off the traveling phase again as above.
Once back in town, we do the end of session phase where we discuss how the relationships between the characters may have changed, count the PCs' blessings, talk about what they learned and overcame, and what epic things they did that people in town will talk about for days. That puts us at midnight or shortly before it and we're done!
This same schedule holds every week and ensures we get to the content we want, starting and ending on time. It also easily allows for a rotating cast of characters since every session begins and ends in town.