I'm looking for a decent .Net chess engine. If there is a good chess existing one, any recommendation as to a good candidate to port to .Net?
6 Answers
Not an engine as such, but Valil.Chess is a good .NET chess game (with source code available - so you can get to the "engine" of the game) which won the Nov 2004 Submission Prize at Code Project.
There is also SharpChess, which is also a complete chess game, written in C#.
As for general Chess engines that could be converted to .NET, there are many available, and depending upon the challenge, you could pick and choose from lots of engines to implement within .NET. A good starting point list is here and also shows the Elo Rating of each engine. Even a re-implementing of the server-side of the FICS would certainly represent a challenge! :)
I write a Computer Chess Blog that takes you through all the steps of writing a chess engine in C# from scratch, it includes a computer chess links section and a chess game starter kit.
Adam Berent

- 1,992
- 19
- 21
The SharpChess Engine code (C#) is available here:

- 19,610
- 14
- 75
- 137
-
The best open source C# chess engine. – ABCD Jul 21 '11 at 06:27
I also recommend SharpChess as a starting point for .Net. When I developed my engines (in VB, Delphi, C#) I constantly referred to Crafty by Prof Dr Robert Hyatt. (Looking at progressive versions of Crafty is a delight.)

- 34,602
- 16
- 110
- 145
For those arriving here many years later, I checked the most popular suggestion among the other answers - which apparently is SharpChess - and it seems quite outdated at this moment; last commit was 6 years ago, there are many pending issues, broken links and the unit tests seems incomplete and not enough to demonstrate how the engine works, at least to most people that are unfamilar with chess engines.
I found this project called StockChess that is a simple WPF application making use of a executable of a chess engine called Stockfish, claiming to be the strongest open source chess engine nowadays
.
I found that StockChess has a reasonable explanation of how it works on its page. You can probably use it as a starting point and that's what I'm doing.

- 944
- 7
- 10