In the fifty-five old years since the development of dynamic programming (DP) by the brainchild of an American Mathematician, Richard Bellman, DP has offers a unified treatment to problems involving sequential or multi-stage decision making in systems with linear, non-linear and stochastic dynamics. DP describes the way of solving problems where there is the need to find the best decisions one after the other. This work provides theoretical, algorithms and applications of DP for resource allocation problems with finite and infinite horizon. Four separate and distinct problems in our societies were considered in this work. They include modeling and application of DP principles to the allocation of buses from both single and multiple stations to different routes by transportation companies; modeling and application of DP principles to distribution of goods from production centres to different stores or markets; and investment of pension plan members' contributions into toll gate management. The models and the applications should be useful to professionals and researchers in the area of operations research, optimization, financial and investment institutions, and practitioneers alike.