Should I make space for a new 50A breaker in a full panel or install a sub-panel?
I would start by putting a rather large subpanel as close as possible to it, probably whichever Siemens panel ThreePhaseEel recommends, or a CH or QO if space is an issue. 42+ space.   Position it with an eye toward rerouting the service wiring there.  

Even before that, talk to the power company about upgrade options.  If a particular size is possible, get the subpanel with that main breaker, but don't sacrifice spaces to do it.  

Short term, if the new subpanel is >=100A it doesn't need any main breaker at all, or even a main-panel breaker.  The main breaker in the main panel will protect it.  Use at least 100A wire to connect the panels, i.e. At least #3Cu or #1Al.  A reason to use cheaper Al on such a short run is the lugs will be aluminum. 

Having a breaker in the main panel can be avoided with a lug-breaker, which snaps in like a breaker but has only lugs.  

Now, at leisure, move one circuit at a time from the old panel to the new.  That's just to get away from those somewhat dodgy Challenger breakers. If wires don't reach, I typically put 4-11/16" square boxes at opportune locations to splice. Ideally metal conduit the rest of the way to the new panel, and THHN wire inside the conduit.  Ideally. 

With all the circuits moved over, try to straightline the subpanel straight off the bottom (switched side) of the main breaker. 

Alternately, if the power company's upgrade path calls for a new meter pan, get one with a main breaker.  Gut the old panel, using it only as a gutter, to the new subpanel, using wires rated for main breaker current.  If that's the plan, you can use a main lug subpanel instead of a main breaker one, saving some space.  42-space main lug CHs are not that big.