Heat the oven to 350 F.
Butter a 2-quart baking dish.
Boil the sliced or cubed potatoes in a pot of boiling salted water for about 10 minutes, or until just barely tender. Drain and set aside.
Slice the hot dogs or smoked sausages into 1/2-inch rounds.
Melt 1 tablespoon of butter in a large saucepan over medium heat. Cook the sliced hot dogs until lightly browned; remove with a slotted spoon and set aside.
Add the remaining 3 tablespoons of butter and the chopped onion to the same saucepan. Cook, stirring, until the onion is translucent.
Add the flour to the onion and cook for about 2 minutes, stirring constantly. Gradually add the milk and continue to cook until thickened. Add 1 cup of the cheese and cook until the cheese has melted, stirring constantly. If the sauce is too thick, add a bit of milk to thin. Taste and add salt and pepper, as needed.
Add the potatoes to the sauce mixture along with the browned sliced hot dogs or sausage. Gently stir to combine.
Turn the potato mixture into the prepared baking dish.
Cover the casserole tightly with foil and bake for 25 minutes, or until potatoes are tender. Top with the remaining cheddar cheese and continue to bake just until the cheese has melted.
Garnish with fresh chopped parsley just before serving, if desired.