You can use some of the code from my answer here: http://stackoverflow.com/questions/2315561/correct-way-in-net-to-switch-the-focus-to-another-application/2315589#2315589, just change the set active window declaration to the set foreground window function, you can also try using different enums for the ShowWindow function.
Visual Basic 6 definition
Declare Function SetForegroundWindow Lib "user32.dll" (ByVal hwnd As Long) As Long
Visual Basic .NET definition
Declare Function SetForegroundWindow Lib "user32.dll" (ByVal hwnd As Integer) As Integer
C# definition
[DllImport("user32.dll")] public static extern int SetForegroundWindow(int hwnd)
If your goal isnt to use the user32.dll imports, then your pretty much screwed, because as your application has no access to the target application in order to bring it into focus you will need to use windows.
ALTERNATIVELY you can use some sort of inter process communication system (key words: .net remoting) and code the focus snippet into the target applciation, and then from your application just send the focus message to your second app