The Spring RestTemplate has been THE go-to web client in Spring for many years and still has a high rate of adoption and real-world usage. 

However, the Spring team decided to add a new web client in Spring 5 and introduced the WebClient class.
This immediately raises the question of why add a new client?

The short answer is that the WebClient is a reactive-aware alternative to the RestTemplate.

Since this is a major change in Spring, it’s important to understand in more detail the differences between the two:
>> Spring WebClient vs. RestTemplate