Как определить номер телефона на компьютере?
Если Вам просто интересно видеть номер звонящего абонента, то компьютер и программирование вообще не нужны. Всё равно нужно будет покупать что-то. Так можно купить АОН или телефон с АОН. Думаю по затратам сравнимо. А программистские усилия направить на что-то ещё.  
Другое дело, если обязательно нужно вводить этот номер в компьютер, сохранять его в базе, вести какую-то статистику. Но про этот случай тут уже рассказали.
Рекомендую погуглить про автоматическое определение номера вообще, безотносительно компьютеров. Помнится там какие-то разные стандарты есть, что сейчас используется на АТС, и какие АОНы (модемы, телефоны) будут совместимы - не грех проверить, прежде чем что либо покупать.
imguru.ru/page/kak-podkljuchit-stacionarnyj-telefo... - описано какое оборудование нужно. Потом в зависимости от того, что вы выбрали, ищете работу с портом на c#, ищете api оборудования и общаетесь.