У меня был этот ответ раньше времени, но мне не повезло найти ответ через Google, поэтому я публикую здесь для потомков.
В событии DocumentCompleted для браузеров добавьте обработчик в событие Window.Scroll элемента управления веб-браузера
webBrowserRight.Document.Window.Scroll += ScrollHandler;
Я также устанавливаю и здесь названия (облегчает их различение, когда мне понадобится позже)
webBrowserRight.Document.Title = "right";
Напишите код обработчика - здесь мне нужно было только синхронизировать прокрутку по вертикали, но вы также можете выполнить горизонтальную синхронизацию.
private void ScrollHandler( object sender, EventArgs e )
{
var scrolledBrowser = sender as HtmlWindow;
if( scrolledBrowser == null ) return;
// here you can see where I needed to distinguish the browser windows
// none of the document, window etc properties matched the sender, so I
// resorted to this hacky way
WebBrowser otherBrowser = scrolledBrowser.Document.Title == "right"
? webBrowserLeft
: webBrowserRight;
int y = scrolledBrowser.Document.Body.ScrollRectangle.Top;
otherBrowser.Document.Body.ScrollTop = y;
}