I've resisted Windows 11 for a while now but eventually I had to succumb and install it on one of my laptops. I figured Framework laptop would do fine. And indeed, all was well. Until I connected the external monitor.
At first corruption was so bad that I though the monitor surely was broken somehow but connecting it to other computers proved it working. I though maybe USB cable was malfunctioning but all other cables gave similar result.
Interestingly, every time I plugged the cable in I got a slightly different result. It ranged from just a few green pixels to almost correctly looking screen.
As a last resort, I decided to try messing with monitor's refresh rate and it took me a while to find it in menus, all the way behind
System > Display > Advanced Display. There I had two settings, asinine 59.93 Hz, and a nice round 60 Hz. Wouldn't you know it, switching refresh rate to 60 Hz solved the issue!
However, I found that strange. Why? Because darn monitor worked at 59.94 Hz in Windows 10. Hm... Yes, it's not a typo. Windows 10 thought 59.94 Hz is appropriate frequency while Windows 11 decided to go with 59.93 Hz. Why the difference between releases - who knows.
In any case, using 60 Hz solved that issue and now I can be annoyed by Windows 11 on both monitors.
PS: Yes, Ubuntu 22.04 on the same computer with the same external monitor works just fine.
PPS: Yes, 59.94 Hz is more correct frequency as it's double the NTSC rate. Not sure from where Windows 11 got 59.93 Hz from.