Ideally what I would like is my toolbar is to be sitting at the top of the screen and other windows re-size around it.
First part is easy, set the startup position, and get the screen width divided by 2, and subtract the width of the toolbar divided by 2 to center it, Y will be 0 obviously.
As for making other windows resize around it, you'll have to P/Invoke MoveWindow() (
Documentation). There are no native .NET stuff provided within the BCL that allow you to interact with other process' in this way. Why bother though if you have it configured so that this toolbar always stays on top of all other windows?
The other thing you'd need is to P/Invoke the EnumWindows() function to get a handle to each top level Window:
Documentation
If you want this to be an immovable toolbar, you'll have to override a few things to prevent the user from dragging the form around.