user4725: Surprised this one hasn't been asked yet.
But how / what is the recommended best practice for shutting down bitcoind ? 
Right now I'm manually killing the process with either sudo kill {pid} or if this is failing (like just now) using sudo pkill -9 -f bitcoind

user133101: This worked for me:
bitcoin-cli -rpcuser=[username] -rpcpassword=[password] -rpcconnect=[ip] stop

user68203: Make sure you specify the same options that you normally use when running bitcoin, for example, if you use a different datadir:
cd C:\Program Files\Bitcoin\daemon
bitcoin-cli -datadir=C:\Bitcoin stop


user89956: In my case, It works that ./bitcoin-cli -regtest stop

user21130: if you started it using 'bitcoind -daemon'
and you are using version 10 or above, then use 'bitcoin-cli stop'

user7043: EDIT: This answer is deprecated, it applied to an old version of the bitcoind client. Apparently RPC functionality is now removed. Please look at the other answers instead.
I guess using bitcoind stop. I recommend this approach as killing the process could end you up with a corrupted database, from what I have experienced. Use bitcoind --help for all options and bitcoind help for all JSON-RPC commands.  

user24556: I'm not sure if bitcoind stop still works as RPC with newer releases, since somewhere in help sections it says RPC funcionality removed from bitcoind.
Try bitcoin-cli stop.

4725: <p>Surprised this one hasn't been asked yet.</p>

<p>But how / what is the recommended best practice for shutting down bitcoind ? </p>

<p>Right now I'm manually killing the process with either <code>sudo kill {pid}</code> or if this is failing (like just now) using <code>sudo pkill -9 -f bitcoind</code></p>
 133101: <p>This worked for me:</p>
<p>bitcoin-cli -rpcuser=[username] -rpcpassword=[password] -rpcconnect=[ip] stop</p>
 68203: <p>Make sure you specify the same options that you normally use when running bitcoin, for example, if you use a different datadir:</p>

<pre><code>cd C:\Program Files\Bitcoin\daemon
bitcoin-cli -datadir=C:\Bitcoin stop
</code></pre>
 89956: <p>In my case, It works that <code>./bitcoin-cli -regtest stop</code></p>
 21130: <p>if you started it using 'bitcoind -daemon'
and you are using version 10 or above, then use 'bitcoin-cli stop'</p>
 7043: <p><strong>EDIT: This answer is deprecated, it applied to an old version of the <code>bitcoind</code> client. Apparently RPC functionality is now removed. Please look at the other answers instead.</strong></p>

<p>I guess using <code>bitcoind stop</code>. I recommend this approach as killing the process could end you up with a corrupted database, from what I have experienced. Use <code>bitcoind --help</code> for all options and <code>bitcoind help</code> for all JSON-RPC commands.  </p>
 24556: <p>I'm not sure if <code>bitcoind stop</code> still works as RPC with newer releases, since somewhere in help sections it says RPC funcionality removed from bitcoind.</p>

<p>Try <code>bitcoin-cli stop</code>.</p>
