In most cases option A or B works best, as it is robust and allows easy editing of the shell.
If you need extremely thin walls then option C may be the best because option B would require too much memory and while option C is generally unreliable, it works acceptably well for thin shells. You can get a shell model of a segment as shown in this example. You need to then cut off the caps, for example using “Plane cut” tool of Dynamic modeler module:
Based on what you describe, option C seems to be the most suitable solution for your particular use case.