The Forward-Backward algorithm combines the forward step and the backward step to get the probability of being at each state at a specific time. Doing this for all time steps can, therefore, give us a sequence of individually most likely states at each time (although not guaranteed to be valid sequence, since it considers individual state at each step, and it can happen that the probability p(q_i -> q_j)=0 in the transition model), in other words:
On the other hand, the Viterbi algorithm finds the most likely state sequence given an observation sequence, by maximizing a different optimality criterion:
Machine Learning Algorithms is one of the parts , studying which you will know what exactly Forward and Backward Algorithms are.