Preheat oven to 400 degrees. Spray a 1-quart casserole dish with non-fat cooking spray.
Layer 1/2 of the potatoes into the bottom of the prepared casserole dish. Top with the onion slices, and add the remaining potatoes. Season with salt and pepper to taste.
In a medium-sized saucepan, melt butter over medium heat. Mix in the flour and salt, and stir constantly with a whisk for one minute. Stir in milk. Cook until the mixture has thickened. Stir in cream cheese, shredded cheese, and yogurt all at once, and continue stirring until melted, about a minute or so.
Pour cheese over the potatoes, and cover the dish with aluminum foil.
Bake for about 1-1 ½ hours, or until potatoes are cooked through, and the top of potatoes has begun to brown and crisp.