<p>I noticed that you can call Queue.Synchronize to get a thread-safe queue object, but the same method isn't available on Queue&lt;T&gt;.  Does anyone know why?  Seems kind of weird.</p>

(I assume you mean Queue<T> for the second one.)
I can't specifically answer the question, except that the IsSynchronized and SyncRoot properties (but not Synchronise() explicitly) are inherited from the ICollection interface. None of the generic collections use this and the ICollection<T> interface does not include SyncRoot.
As to why it is not included, I can only speculate that they weren't being used either in the way intended by the library designers or they simply weren't being used enough to justify retaining them in the newer collections.