The Review stage is generally useful for verifying the data keyed in by the user in the previous steps.
Best used in scenarios where the user cannot roll back the changes after confirming like, transferring funds to someone.
However in less severe cases this step is redundant.
Note that the over all goal is to give an opportunity to trace back and rectify instead of penalizing the user.
Good usability requires that you minimize cognitive load, and having to remember information increases this load.
On the last screen of a wizard the user is clicking a button to confirm / submit the details they have entered on all the previous screens. If there is no "review" screen presented at this point, the user has to remember what they have entered on each screen. Even if they can go back through all the screens to review and double check their entries, they still have to remember things that are on previous screens.
If the amount of information entered is minimal then you could argue that a review screen is not necessary, but in general developers choose the wizard pattern precisely because they have a lot of information that needs entered and they want to break it up into manageable chunks (long forms are intimidating).
The answer, as always, is "It depends."
Reviewing the data we've entered is important in certain scenarios like shopping-cart checkouts (where we're spending money and shipping to an address) and multi-step data entry (where we've entered info in several prior steps and checking it all together would be useful).
In other scenarios, like formatting a drive or setting up some bit of our system, we might not find reviewing everything we've done to be useful because "Who cares?"