Do we need a electrical sub-panel?
You have enough room to get what you want, but nothing more than that
The good news is that your panel can accept double-stuff (tandem/quadruplex) breakers at all positions, which means you can free up just enough room for the two new circuits in your panel and a feeder to a subpanel, but nothing more without compromising your ability to retrofit AFCI protection into your panel.
I would start by getting a HOMT230240 to put in spaces 5 and 7; this consolidates your range and dryer circuits into those two spaces, replacing the HOM240 and HOM230 that currently serve them.  We then move onto the wall heater and heat pump (mini-split) circuits, which get moved onto a HOMT215220 in spaces 1 and 3 to replace the existing HOM220 and HOM215, respectively.  This leaves spaces 2, 4, 16, and 19 open for the four new branch circuits you have planned; once those are in, you can put up to a 125A feeder in, with the feeder breaker on spaces 18 and 20 in the panel.
But you have a problem with that extra framing in front of the concrete
The bad news, though, is that extra framing furring out from the block wall the panel's mounted on already violates Code.  In particular, it infringes on the clear working area in front of the panel required by NEC 110.26(A); as a result, you'll need to either trim that frame back so you have a 30&quot; wide space in front of the panel clear of errant framing bits or other obstructions, or frame up from the low wall to provide a bay to mount the panel into, then move the entire panel forward into the new bay.
(If you need a visual aid, think of a fridge-sized box in front of the panel that needs to be kept absolutely clear of fixtures, obstacles, tripping hazards, and so on.)
Worse yet, the original builder didn't foresee this coming
The other problem with your situation is that your panel was mounted in a spot that while legal modulo the knee-wall, is not wise.  You see, multiple pieces of electrical equipment are permitted to share a single 30&quot; &quot;bay&quot; of clear working space, but the window and perpendicular wall in your picture are both rather awkwardly placed, making it rather impossible to get a second panel into that space, especially with the transition from frame to block involved.  Worse yet, while you theoretically could put the panel in the frame wall around the corner, that's practically a no-go due to the corner framing at the end of that wall blocking any effort to run wiring through it.
So, when you do put the subpanel in, you'll have to find room somewhere else for it.  This is further aggravated by the fact conduits fat enough for fat feeders don't fit well into 2x4 stud walls, which means you'll be stuck pulling a 4-wire SER cable over for the feeder instead.  The good news is that since you're constrained to a 125A feeder breaker by panel spaces, you can pull a 1/0-1/0-1/0-2 Al SER cable and have it be good enough for a reasonably sized subpanel installation, with a 24-space or 30-space, 125A, main lug panel fed from the feeder breaker in the main panel.