My parents used a wok way back when to make spring rolls, but it depends on what you're using it for.
A cast iron skillet will work for a lot of things, but you don't really get a deep-fry from it. It is great for quickly frying up chicken parts to finish in the oven or frying up cutlets/katsu/schnitzel.
A deep sauce pan or dutch oven works well if you are actually trying to deep-fry. You can put 2-4 inches of oil in it and still only be a third of the way up the vessel. This will allow you to submerge the items you are frying, and still not have the oil close to the top.
As for materials, you can go two ways. A thinner material like aluminum or stainless will respond quickly to the heat you put on it. This works both ways of course, since it means the oil will cool down more quickly if the heat gets too low. Cast Iron is good in this regard (enameled or bare) because it retains the heat. When you add items, it cools the oil, so to maintain the proper temperature and keep food from absorbing more of the grease, cast iron should work better in this regard. Using a gas stove may make this less of an issue though.
As for spatter, you are going to get it regardless. The spatter comes from moisture in the food being violently repelled by the oil. It sinks into the hot oil, boils into steam, and then makes a mess of your stove. A little spatter is to be expected; just make sure your food is as dry as possible before placing it in the oil. Spatter-screens can also help.
EDIT: I found a link that talks about deep frying. Most pertinent to your question is to use a deep-sided pan. This keeps the oil from spilling over when you add your fryables, and also helps to minimize splatter. It will be there, but more will be 'caught' by the pan.
Six Steps for Deep Frying Without a Deep Fat Fryer