An OpenPGP "secret key" actually consists of a whole bunch of different OpenPGP packets. For example, it will include the public and private keys, which are in the end just numbers with some header added indicating that this is a public/private key packet and what protocol is in use.
Everything else is stored in other OpenPGP packets, for example:
- user IDs
- subkeys
- signatures are used for a whole bunch of uses:
- binding user IDs and subkeys to the primary key
- configuration of preferred algorithms, ...
- setting expiry dates
- certifications you received from other keys
So everything really important is the primary private key. As long as you have this, you can revoke all (sub)keys and perform arbitrary modifications to your key at any time.
As this primary private key will also never change, you can easily store a read-only copy. If you need to load it (again), just fetch everything else (everything that is public) from a key server, and GnuPG will merge it. The only thing missing would be secret subkeys not included in your offline export, so you'd have to exchange those.