First of all, search this forum as there are many, many posts similar to your about Morocco.
My second point is what is enough time to discover a city? A year might not be enough. And you are not going to truly learn about the local culture if you can't speak either French or Arabic. So as a tourist I think 3 days is enough for each city. You will see the sights and get the flavor of each.
I would however lean more heavy on Fes instead of Casa. There isn't much for a tourist in Casablanca, but there is a lot to see and do in Fes. The Sofitel Marrakech has a great pool to enjoy for a day or two.