I don't need a header to follow me down the page, in fact I'd prefer it not to. On the very rare occasion when I need to scroll all the way to the top of the page, I have no problem figuring out how to do that. Feels like they're introducing a persistent UI element without a benefit. Benefit to me, anyway. Maybe they heard from a lot of users who were having trouble remembering where the header was, I can't say. I don't log in to Wikipedia, so this doesn't affect me much at present.

I'm not sure what value the collapsible table of contents is. Maybe it's useful on mobile, to help save screen space, but on desktop it would just be extra work for me to collapse the sections (which appear to be expanded by default). I have not found the length of the table of contents to be a problem, and I see the value of this structure as being that it allows me to see everything at once.

I get why having a maximum line length is good for readability. My reaction to this feature is negative, but I wonder if it's because I've gotten good at sizing Wikipedia articles the way I like them to be, by upping the font size and shrinking my browser window. Maybe I will come around on it, but my initial reaction was that I don't trust them to make the right decision for me, so I'd rather they just kept it flexible.

Yeah, I don't like it either, and I don't see a way to disable this apart from user's defined bookmark script, like kill sticky[0]:

    javascript:(function()%7Bdocument.querySelectorAll(%22body%20*%22).forEach(function(node)%7Bif(%5B%22fixed%22%2C%22sticky%22%5D.includes(getComputedStyle(node).position))%7Bnode.parentNode.removeChild(node)%7D%7D)%3Bdocument.querySelectorAll(%22html%20*%22).forEach(function(node)%7Bvar%20s%3DgetComputedStyle(node)%3Bif(%22hidden%22%3D%3D%3Ds%5B%22overflow%22%5D)%7Bnode.style%5B%22overflow%22%5D%3D%22visible%22%7Dif(%22hidden%22%3D%3D%3Ds%5B%22overflow-x%22%5D)%7Bnode.style%5B%22overflow-x%22%5D%3D%22visible%22%7Dif(%22hidden%22%3D%3D%3Ds%5B%22overflow-y%22%5D)%7Bnode.style%5B%22overflow-y%22%5D%3D%22visible%22%7D%7D)%3Bvar%20htmlNode%3Ddocument.querySelector(%22html%22)%3BhtmlNode.style%5B%22overflow%22%5D%3D%22visible%22%3BhtmlNode.style%5B%22overflow-x%22%5D%3D%22visible%22%3BhtmlNode.style%5B%22overflow-y%22%5D%3D%22visible%22%7D)()%3B%0A
But unfortunately, it renders the header useless in this case.

[0]: https://github.com/t-mart/kill-sticky