On shared web hosting, are all subdomains like
bar.example.com always hosted on the same server (same IP address)?
They typically are. They're usually subdirectories within the root web directory or one level below that. Some hosts even let you choose where in your directory structure to put them.