Q:

Should you call dispose on a HttpClient response object?

HttpClient is not disposed or destroyed as it is reused between calls.
public async Task<HttpContent> DoSomething()
{
    var response = await _httpClient.PutAsync(url, content);

    return response.Content;
}

Does the response.Content need to be copied into another location and then the response which is a HttpContent manually disposed via .Dispose()? If so, why or why not?

A:

The general rule is: always call Dispose on objects implementing IDisposable. The reason you always want to do that is because you never know if the implementation will ever need to dispose some resources.
As you can see in the source, it does dispose the actual stream, so you really should dispose it.
You might want to do it in the receiving method. There is no need to copy the result and call dispose right away.
You could call it like this, like you are used to do:
using (var r = await DoSomething())
{
}

