Add the olive oil to a large pot or Dutch Oven over medium heat.
Season the steak with the salt and pepper, then add to the hot oil. Cook, stirring occasionally, until it’s done through, about 6-7 minutes.
Remove the steak with a slotted spoon and set it aside. Leave the extra juices in the pot.
Add the onions and garlic to the pot with the beef juices. Cook 2-3 minutes until softened.
Pour in the beef stock and carefully add in the potatoes. Increase the heat to high and bring to a boil. Cook for about 10-12 minutes until the potatoes are just fork tender.
Meanwhile, in a separate pot over medium heat, melt the butter. Whisk in the flour until well combined, then the milk.
Once the potatoes are fork-tender, pour in the hot milk mixture and stir until thickened, about 3-4 minutes.
Add the steak back to the pot along with the heavy cream and cook until heated through, about 2-3 minutes.
Remove the pot from the heat and stir in the white cheddar cheese cheese until melted and thoroughly mixed in.
Taste and season as needed with more salt and pepper.
Ladle the soup into bowl and garnish with extra cheese and sliced green onions, if desired.