What's the best way for me to switch levels in-game?

In my current project I have several different maps e.g. (A forest, A desert, A city)
I have set up so you can travel between these maps with a unit, but ofcourse returning to your original map resets everything on it back to the defaults.
What would be the best way for me to retain information like Unit Info, Unit placements etc on a map so it can be loaded back correctly?

If you would like more info to help you decide what would be the best way please ask.

You could save the information in a persistent structure in your game instance or game mode. Give every unit a unique ID (integer variable) and save their transforms according to their ID in an array in your game instance or game mode, so that when you get index 0 auf your transform array, you get the transform of your unit with index 0, etc.