For example, say if I had a character model that had wings and I wanted to have a version of that model that did not have them. Would I have to model the character a specific way in order to achieve that, or use some kind of shape key or other method? I'm still semi-new to blender at the moment so i'm not sure.
This question is pretty wide and depends a lot on the use case - for wings they're gonna need to be animated so will need a different set of bones so probably a different model. Though if you were happy just to slot them on the back you could rig them separately and parent them, though they wouldn't be part of the same mesh. However then you could have lots of other things that could go in the slot on the back, so again, depends on what you want.