Operating System: windows
binary build: a prebuild version download from neovim's release page (neovim is 0.2.1)
reproduce:
:silent !start cmd.exe /C dir & pause
before running the command:

after running the command:

Very strange. Does it eventually get back to normal - e.g. if you :redraw?
GUI restored after :redraw!,
But I am afraid there is an important bug like access an invalid memory area....
Possible, but first we need to figure out if the issue is in the GUI or in Neovim. Usually the GUI just renders what nvim tells it.
It seems more likely that start is producing output that somehow causes that breakage in the display.
The disappearing tabline is not unexpected as the interface scrolls to show the command output. The issue here is the displayed text.
Does this also happen with other commands? like !echo hello
neovim/neovim#5844 directly relates to this issue.
neovim-qt is fine. Neovim has issues parsing un-quoted parameters. I can definitely reproduce this in Windows using nvim 0.2.2.
Quoting the parameters to cmd.exe is a current workaround.
:silent !start cmd.exe "/C dir & pause"
@DustinVenegas Nvim prerelease (0.3.0) has some improvement with quoting on Windows, e.g. https://github.com/neovim/neovim/pull/7343
silent !start cmd.exe /c dir & pause
runs cmd.exe /c dir in a different window and runs pause after start. start <command> & pause where <command> is cmd.exe /c dir.
neovim/neovim#7343 doesn't affect that behaviour but @DustinVenegas workaround doesn't work now, because it doesn't work in a cmd.exe prompt.
I'd change that to silent !start cmd.exe /s/c "dir & pause" to mirror nvim's behaviour but /s is optional for this specific command. For reference, check s:execute() in https://github.com/junegunn/fzf/blob/master/plugin/fzf.vim for neovim and cygwin workarounds using cmd.exe start.
This issue can be closed.
Quoting the parameters to cmd.exe is a current workaround
Even in cmd.exe _itself_, start cmd.exe /C dir & pause will behave as it behaves in Nvim. This is a case where Vim is training people to do weird things.
Most helpful comment
runs
cmd.exe /c dirin a different window and runspauseafterstart.start <command> & pausewhere<command>iscmd.exe /c dir.neovim/neovim#7343 doesn't affect that behaviour but @DustinVenegas workaround doesn't work now, because it doesn't work in a cmd.exe prompt.
I'd change that to
silent !start cmd.exe /s/c "dir & pause"to mirror nvim's behaviour but/sis optional for this specific command. For reference, checks:execute()in https://github.com/junegunn/fzf/blob/master/plugin/fzf.vim for neovim and cygwin workarounds using cmd.exestart.