For positionnal play, don't start thinking about moves, start from the position evaluation.
There are many ways to evaluate a position, one suggestion is to look sequentially at:
material
king security
direct threats
piece activity
pawn structure
Here, going very fast, this is how I would think about the position:
Material is equal. wK is slightly safer than bK, because White has more space on the kingside and there is a possible check on the b1-h7 diagonal. No immediate threats. Queens and knights are well placed for both sides, with the Nh4 position quite peculiar: far from the center but it might be useful if f5 becomes available or if White develops an initiative against the bK. ...Nc4 jumps have to be checked. There are no open files for rooks, and only Black has a rapid way to create some with ...c5 or even ...f6, while While may hope for a rook-lift on the third rank or to support the majority on the kingside.
Indeed, the pawn structure with Pe5 vs Pc7 defines most of the future plans: White has a better center and space, and each side wants to be active on the side of their majority: ...c5 questions White's center, opens the c-file and creates an isolated passed pawn on d5, while f4-g4-f5 could lead to a mating attack, suffocation, or just a passed e-pawn in a distant endgame.
A premature f4 might be counter-productive: if White piece don't provide enough support, Black could organize a blocade with ...Nf5, ...g6, ...h5, or possibly ...f5 - although no bN can easily reach e6. To activate his position, White rather needs to move the queen out of the way (most probably to d3), use the g-pawn, and be ready to re-route the Nh4 - if chance happens, through f5; more probably via g2-e3. The wK might feel airy then the pawns rush forward, but it would still be reasonnably covered, say, on h2. The key question I would try to solve with calculation is: should I improve the rooks' placement beforehands ? Rd1 is a bit passive but at least it's protecting d4, but Ra1 is totally out of play. On the other hand, would Rac1 prove useful ? We have no target on the c-file. Isn't Rf1-Rad1 or Re1-Rad1 too slow ?
So lets' try to be more concrete: 21.Qd3 Kg8 (gotta check if 21...g6 changes much) 22.g4 brings two positionnal threats: f4-f5 and Nf5. Sounds nice, but 22...Nc4 threatens a fork on b2 and forces us to slow down with 23.Rab1, and that rook will remain passive for a while. So why not start with 21.Rac1, ensuring that any ...Nc4 will be met with Rc2 from where the rook can join the kingside later ? I see two ways for Black to use that extra tempo: 21...Rac8 planning ...c5 asap, or 21...g6 intending to cross our plans with 22.Qd3 f5 (very commiting) 23.ef6 (not taking en passant exposes us to a blocade with a bN trying to reach e6, possibly faster than anything we can engineer on the g-file) 23...Rf6 when a lot as changed : Black's castle has been weakened, the e-file is open, the Nh4 will certainly aim for the outpost on e5, g6 and f2 are soft points... Meanwhile 21.Rf1 Nc4 22.b3? Nd2 is a failure, but 22.Ra2!? followed by 23.b3 could do the job, and there seem to be no tactical issue with 21.Re1.
Well, let's stop there. My candidate moves are 21.Qd3, 21.Rc1 and 21.Re1, and the lines I would want to explore further and evaluate before choosing my move are:
- 21.Qd3 Kg8 22.g4 Nc4 23.Rab1 c5 (then maybe 24.f4, 24.Nf5, 24.Kh2, 24.Ng2)
- 21.Qd3 g6 (I will spend time checking this only if the previous line is tempting for White)
- 21.Rc1 Rc8 22.Qd3 Kg8 23.g4 c5 (then 24.f4 or 24.Nf5)
- 21.Rc1 g6 22.Qd3 f5 23.ef6 Rf6 (then 24.Nf3 or 24.Re1)
- 21.Rc1 g6 22.Qd3 f5 23.Kh2 (if the previous line is fine for Black)
- 21.Re1 planning 22.Rad1
In blitz, I might go for a rook move because I don't have a good feeling about expending on the kingside while leaving such a passive rook on a1 or b1. But in case I'm wrong that wouldn't be the first time my intuition lets me down!