Preheat the oven to 350 degrees. Put the potatoes in a large saucepan and add enough water to cover. Add 1/4 teaspoon of salt. Boil until the potatoes are slightly tender. Be careful not to over cook! Drain and set aside.
In non-stick skillet, heat the butter and add the onions. Cook, stirring, until the onions are caramelized. Add the garlic and cook for 1 minute.
In a casserole dish, alternate the potatoes, onions and cheeses, green onions, parsley, salt, pepper in two layers until all are used. Pour the heavy cream over the ingredients is the dish. Cover with aluminum foil and bake for 30 minutes. Uncover and bake for an additional 10 minutes. Allow the casserole to cool slightly before serving.
Makes 6 to 8 servings