user115627: As I understand it, using dumpwallet for a non-descriptor wallet in Core will give you the wallet seed in WIF format. This seed can then be used with sethdseed in a new wallet, thereby recovering the original wallet. So in effect, one can make a paper backup of a Core wallet.
But with descriptor wallets, dumpwallet does not work.
Is there a way to make a paper backup of a Bitcoin Core descriptor wallet?

user48884: There is currently no way to make such a backup of a Bitcoin Core descriptor wallet. There are open PRs that will allow you to export the descriptors stored in the wallet, however these have not been merged yet.

user31393: This is working now, with version 23 of the bitcoin-core:
How to create the descriptors wallet?

createwallet("my_wallet", False, False, "", False, True, False)
getnewaddress("my_label", "bech32")

How to save the wallet?

backup = listdescriptors(True)['descriptors']
Dump backup into a json file

This file can be printed or saved for later reuse.
How to restore the wallet?

createwallet("my_wallet_2", False, True, "", False, True, False)
Load the json file into backup
importdescriptors(backup)
getnewaddress("my_label", "bech32")

This should give the same BTC address as before.

115627: <p>As I understand it, using <code>dumpwallet</code> for a non-descriptor wallet in Core will give you the wallet seed in WIF format. This seed can then be used with <code>sethdseed</code> in a new wallet, thereby recovering the original wallet. So in effect, one can make a paper backup of a Core wallet.</p>
<p>But with descriptor wallets, <code>dumpwallet</code> does not work.</p>
<p>Is there a way to make a paper backup of a Bitcoin Core descriptor wallet?</p>
 48884: <p>There is currently no way to make such a backup of a Bitcoin Core descriptor wallet. There are open PRs that will allow you to export the descriptors stored in the wallet, however these have not been merged yet.</p>
 31393: <p>This is working now, with version 23 of the bitcoin-core:</p>
<h5>How to create the descriptors wallet?</h5>
<ol>
<li><code>createwallet(&quot;my_wallet&quot;, False, False, &quot;&quot;, False, True, False)</code></li>
<li><code>getnewaddress(&quot;my_label&quot;, &quot;bech32&quot;)</code></li>
</ol>
<h5>How to save the wallet?</h5>
<ol>
<li><code>backup = listdescriptors(True)['descriptors']</code></li>
<li>Dump <code>backup</code> into a json file</li>
</ol>
<p>This file can be printed or saved for later reuse.</p>
<h5>How to restore the wallet?</h5>
<ol>
<li><code>createwallet(&quot;my_wallet_2&quot;, False, True, &quot;&quot;, False, True, False)</code></li>
<li>Load the json file into <code>backup</code></li>
<li><code>importdescriptors(backup)</code></li>
<li><code>getnewaddress(&quot;my_label&quot;, &quot;bech32&quot;)</code></li>
</ol>
<p>This should give the same BTC address as before.</p>
