I created a simple test with SendKeys, and tried both SendWait and Send.
Private Sub Form1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handle
Do not Debug.
The Visual Studio Debugger was messing in my case.
Running the program on Release and not debugging gave me the intended behaviour while having it attached or on Debug config was duplicating the output