Правильно это делается так:
serverTalk().then(console.log).then(serverTalk).then(console.log);
Вы же, в своем коде передаете второй раз вызов
serverTalk, а не саму функцию или колбек с вызовом, поэтому она срабатывает сразу же за первым вызовом.
Ваш вариант можно исправить так:
serverTalk().then(function(result) {
console.log(result);
}).then(function() {
return serverTalk();
}).then(function(result) {
console.log(result);
});
или, если используете
ES6, так:
serverTalk()
.then(result => console.log(result))
.then(() =>serverTalk())
.then(result => console.log(result));
Но, в данном случае, лучше использовать самый первый вариант.