When to Use Dynamic Routing
The most common scenario for using a dynamic routing protocol would be in a large environment such as an enterprise campus or ISP, an unstable network that frequently changes, and a network where applications heavily depend on uninterrupted network connectivity or at least short convergence.
Static routing would never work in such environments with many routers and many stub networks. You will need to create static routes for each segment and on each router, which will be extremely time-consuming and most likely result in misconfiguration.
Therefore, a dynamic routing protocol in a large network would be the only reasonable option. It will dynamically provide network knowledge to all routers, quickly adapt to network changes, and converge fast when necessary.
Learning all possible routes to each network will consume extra memory, but at the same time, it will allow the routers to decide on their own which routes are best and install them in the routing table.