Preheat oven to 400 degrees F. Place potatoes into a large saucepan, and cover with lightly salted water. Bring to a boil and cook for about 10 minutes, until just tender. Drain and reserve the potatoes.
Heat the butter or oil in a large cast-iron skillet. Add the onion and saute over medium heat for 7 minutes. Stir in the potatoes and corned beef. Add salt and pepper to taste, then mash the mixture down gently – not too much – with a potato masher or fork. Sprinkle the cream over the top. Leave on the heat for another minute or two, then transfer to the oven and bake for 30 minutes.