Online C# Editor and Compiler for Interviews

Write and run C# programs right in the browser, with no Visual Studio or .NET SDK to install: the code compiles on the server, and errors and output show up at once. For an interview, open a shared session and send the candidate a link. Free, no sign-up.

Open the C# editor
Free, no sign-upHow to run a live coding interview in C#Collaborative code editors compared

Code sample

using System;
using System.Linq;

public class Program
{
    public static void Main()
    {
        int[] nums = { 3, 8, 1, 9, 4 };
        var evens = nums.Where(n => n % 2 == 0).OrderBy(n => n);
        Console.WriteLine(string.Join(", ", evens));
        Console.WriteLine(nums.Max());
    }
}

Output

4, 8
9

What the editor does

  • Mono 6.12: the program compiles and runs on the server in an isolated sandbox, and every participant sees compile errors and output.
  • LINQ and collections are at hand: List, Dictionary, HashSet, Queue, Stack, and the Where, Select, and GroupBy methods.
  • Real-time collaborative editing: up to 5 participants in one session, with edits and cursors visible instantly.
  • The problem statement is written in Markdown right in the session, next to the code.
  • The task bank is open without an account. After a free sign-in: your own tasks, an interview mode with timers, candidate scoring, and interview history.

How to run the interview

  1. Click "Run an interview" — the session is created with a sample program, which you can replace with your own task.
  2. Describe the problem in Markdown and send the link to the candidate: they need no sign-up.
  3. Have the candidate verify the solution with calls from Main and output through Console.WriteLine. Put input data in the code or in the «Input (stdin)» field above the output — every participant sees it.

Typical interview tasks

  • Find a pair of numbers with a given sum using a Dictionary in O(n) and compare it with a nested loop.
  • Group orders by customer with LINQ GroupBy and sum each group.
  • Explain the difference between class and struct: where the data lives and what is copied when passed to a method.
  • Implement IEnumerable with yield return and show when the lazy code runs.
  • An LRU cache on Dictionary and LinkedList with Get and Put in O(1).
  • Check that brackets are balanced using a Stack<char>.

Limitations

  • There are no autotests for C# yet — verify the solution with calls from Main and output.
  • The code is compiled by Mono, not .NET 8: the newest language features may not be supported. Declare a class with a Main method.
  • Only the standard library is available: NuGet packages cannot be added.
  • Compilation is limited to 10 seconds, and a run to 3 seconds and 64 KB of output.

FAQ

What does C# run on?
Mono 6.12. The program compiles and runs on the server, so the result is the same for every participant.
Can I add a NuGet package?
No, only the standard library is available. Collections, LINQ, and string handling are enough for interview tasks.
Are there autotests for C#?
Not yet. The solution is verified with calls from Main and output — this also shows how the candidate tests their own code.
Do I need to sign up?
No. The editor opens at once, and for an interview the candidate only needs the link and a name. The task bank is open without an account too. Signing in is needed for your own tasks, interview mode, and history.

Editors for other languages