In a small skillet over medium high heat, heat the olive oil.
Add Brussels sprouts and shallots and cook for 3 to 5 minutes, until softened
Place 2 slices of cheddar cheese onto a slice of bread top with Brussels sprouts mixture . Spoon the cranberry sauce on top, lay the other 2 slices of cheese on top of that and place the other slice of bread on top
In the same skillet over medium heat, melt the butter.
Place the sandwich into the skillet and press down with a spatula.
Cook for 2 to 3 minutes per side until cheese has melted.
Remove the sandwich from the skillet, and serve warm.