I know this has been answered already but this worked for me.
- Add a Linked Server under Server Objects | Linked Servers:
Microsoft documentation. 
- Name the Linked Server - [SERVER-NAME or <some ipaddress>, <some-port>]
 - e.g. - [10.0.0.200,2345]- I am using port 2345 but the standard MS SQL port is 1433.
 
Example:
- We have a [Customers]table
- We want to update [CustomerAddress]-field forCustomerId = 123
- We want to use backup data from a server called [backupServer]
- The [backupServer]is the machine where we execute the SQL
This is the SQL-code:
UPDATE production
SET
    CustomerAddress = backupServer.CustomerAddress
FROM 
    [10.0.0.200,2345].[ProductionDatabase].[dbo].[Customers] production
INNER JOIN 
    [BackupDatabase].[dbo].[Customers] backupServer
        ON 
            production.CustomerId = backupServer.CustomerId
WHERE 
    backupServer.CustomerId = 123
Generalized format:
UPDATE production
SET
    columnName = backupServer.columnName
FROM 
    [SERVER-NAME or IP,PORT].[ProductionDatabase].[dbo].[tableName] production
INNER JOIN 
    [BackupDatabase].[dbo].[tableName] backupServer
        ON 
            production.SomeId = backupServer.SomeId
WHERE 
    backupServer.SomeId = <id>
For those wanting to copy all data (INSERT) from a table from one server to another, it can be done with a command like this:
SELECT * INTO TargetTable 
FROM 
[SERVER-NAME or IP, PORT].[SourceDatabase].[dbo].[SourceTable]
This will create a new table called TargetTable using data from the SourceTable at the SourceDatabase at SERVER-NAME or IP, PORT.