Ответ 1
PostMessage
(в "чистом программировании окон", aka win32 API) асинхронный, то есть, чтобы процитировать документы:
Помещает (помещает) сообщение в очередь сообщений, связанная с поток, который создал указанный окно и возвращает, не дожидаясь поток для обработки сообщения.
Чтобы отправить сообщение в очередь сообщений связанные с потоком, используйте Функция PostThreadMessage.
SendMessage
синхронный, то есть снова цитирует:
Отправляет указанное сообщение в окна или окна. SendMessage функция вызывает процедуру окна для указанного окна и не до тех пор, пока оконная процедура не будет обработал сообщение.
Чтобы отправить сообщение и вернуться немедленно используйте SendMessageCallback или Функция SendNotifyMessage. Чтобы опубликовать сообщение в очередь сообщений потока и немедленно вернитесь, используйте PostMessage или PostThreadMessage функция.
Хороший учебник по этим двум функциям и их использование здесь.
Соединение с WPF обсуждается в этом вопросе SO.