Sendtoaddress using custom private key
If you're using Bitcoin Core, you must first import the private key using the importprivkey console command.  The coins held by that private key will then be added to your existing balance (if any).

If you want to spend those specific coins rather than some others in your wallet, you can use the "coin control" feature.  This can be enabled in Settings:Options:Display; when you send coins, you will be offered a list to select which addresses/transactions you want to spend from.