In a large pot with boiling salted water cook elbow macaroni until al dente. Drain.
In a medium saucepan, over medium heat melt butter or margarine. Whisk flour and stir vigorously. Add milk and cook until thick and bubbly, about 5 to 7 minutes. Add cheeses and stir until completely melted.
In a large bowl mix together the drained pasta and cheese sauce mixture. Toss to coat evenly.
Pour into a greased 2 quart casserole dish. Bake in a preheated 350 degree F (175 degrees C) oven for 30 minutes. Let stand 10 minutes before serving.