Loading…

C# Interview Questions and Answers

By Umesh Singh
Last update: 04 Apr 2020, 34 Questions
C# Interview Questions

C#, sometimes also called as C sharp, is a component-oriented, general-purpose computer programming language that encompasses strong typing, declarative, imperative, and object-oriented disciplines. This information has been asked quite a few times recently in C# interview questions. It is a multi-paradigm language that was initially designed for Common Language Infrastructure (CLI).

C# allows the developers to build reusable components for a huge variety of applications. C# is an evolution or extension of C and C++ languages. However, it has taken much of its features from other programming languages as well, including Delphi and Java. When you analyze the basic syntax of C# and Java and C++, it will look very similar, which is intentional and not a coincidence.

Most Frequently Asked C# Interview Questions

1. What is C# and why it is used for?

C sharp is a component-oriented, general-purpose computer programming language that encompasses strong typing, declarative, imperative, and object-oriented disciplines. It is a multi-paradigm language that was initially designed for Common Language Infrastructure (CLI)

Why It is used for?

You can write desktop applications, Console applications, ASP.NET applications, and scalable cloud apps. These are only a few of the uses of C#; a skilled developer can do a lot more than this.

2. When was C# created?

It was developed by Microsoft around the year 2000.

3. Explain the difference between .NET and C#?
S.no C# .NET
1. Programming language Framework on which the language is built
2. Runs on the .NET framework Primarily runs on Windows
3. One of the many languages in the .NET Framework Includes various languages under it
4. C# called C sharp why?

The term "sharp" is inspired by music notation that indicates that the musical note should be higher in pitch. This has been applied to the language C++, where "++" indicates that its performance will ideally be improved or increased by 1. The sharp symbol resembles four "+" symbols (in a grid of two-by-two), that may imply to some that C# is an advanced or improved version of C++. We have the most extensive question bank to help you answer C# interview questions.

5. What do you mean by Winforms in C#?

Winforms, or Windows Forms, are a graphical user interface or application programming interface (API) that are included in Microsoft's .NET Framework.

6. What are the advantages of using C#?
  • Easy to understand
  • Object and component-oriented
  • Faster and safer
  • Part of Microsoft's .NET framework
7. Explain the various types of classes used in C#?

In C#, the different types of classes are Partial class, Sealed class, Abstract class, and Static class.

8. Explain the difference between object type and dynamic type variables in C#?
S.no Dynamic type variables Object type variables
1. Introduced in C# 4.0 Introduced in C# 1.0
2. Handle-type checking at runtime Handle type checking at compile time
3. Casting not required Cast object variables to original types
9. Describe the types of comments in C#?

This information is usually asked in C# technical interview questions. In C#, there are mainly three kinds of comments - single line, multiple lines, and XML comments.

11. Explain the difference between “constant” and “read-only” variables used in C#?
S.no Constant variables Read-only variables
1. Declared at compile time Used to assign a value at run time
2. Value cannot be changed Value can be changed
12. What do you mean by “finalize” and “finally” methods in C#?
S.no finally finalize
1. Called after execution of block Called before garbage collection
2. Used for exception handling. Used for performing clean up operations
3. Usually contains clean-up code Automatically called when an instance is not called subsequently.
13. Explain the types of errors in C#?

Programming errors in C# are mainly of three types - Syntax Errors, Run time Errors, and Logic Errors.

This information can be asked during C# interview questions and answers.

14. Explain the differences between static, void and public in C#?
S.no Public Static Void
1. An access modifier   A type modifier
2. Declared variables are accessible from anywhere Declared variables are globally accessible Variable does not return value
15. What do you mean by Jagged Arrays in C#?

A jagged array, also called an Array of arrays, contains different elements of a type array. The elements in a jagged array can be of different dimensions and sizes.

16. Please explain value types and reference types used in C#?

Value types in C# are stored in a Stack. For example, int, byte, double.

Reference types in C# are stored on a heap. For example, string, interface.

17. How many types of constructors are available in C#?

A constructor in C# is a member function of a class that contains the same name as its parent class. This function gets automatically invoked when an object class gets created. A constructor constructs values in data members while initializing the parent class.

There are five types of constructors - Static constructor, Private constructor, Copy constructor, Default constructor, and Parameterized constructor.

18. Explain the access modifiers in C#?

The access modifiers usually used in C# include Public, Private, Protected, Internal and Protected internal.

This is one of the frequently asked C# interview questions.

19. What is the difference between struct and class in C#?
S.no Struct Classes
1. Value-type Reference types
2. Inheritance not supported Inheritance supported
3. Members public by default Members private by default
20. What do you mean by generic class in C#?

This class is used for creating classes or objects that do not contain a specific data type. This kind of data type is assigned during the runtime.

21. What do you mean by Hashtable C#?

It is a collection of keys or value pairs that contains values based on keys.

22. Explain boxing and unboxing in C#?

Converting a specific value type to a particular reference type is known as Boxing.

Whereas, explicit conversion of same reference types, that were created during boxing, back to the same value type is known as Unboxing.

23. What do you mean by StreamReader/StreamWriter class in c#?

StreamReader and StreamWriter are two different classes in namespace System.IO. Both of these classes are used when the user wants to read or write charact90 and Reader-based data, respectively.

Members of StreamReader inlcude, Close(), Read(), Readline().

Members of StreamWriter include, Close(), Write(), Writeline().

24. What do you mean by Abstract Class in C#? In C#, an Abstract class is a class where an object cannot be instantiated. Denoted by keyword abstract, this class can be inherited. However, it must include at least one of the methods.
25. Please explain the basic String Operations used in C#?

This is an essential topic in C# interview questions for experienced professionals. Some of the basic string operations in C# are Concatenate, Modify, Compare and Search.

27. What do you mean by Delegates and explain different types of Delegates?

A Delegate in C# is a variable, which holds a reference to a specific method. This also makes a delegate a function pointer of a reference type. All the Delegates are derived from the System. Delegate namespace.

Delegates are of three types -
  • Single Delegate
  • Multicast Delegate
  • Generic Delegate
28. What do you mean by Synchronous and Asynchronous operations?

Synchronous is one of the ways to create a thread-safe code in C# where only one thread is able to access resources at any time.

Asynchronous call waits for a method to get completed before continuing with program flow. In an Asynchronous operation, the method call immediately returns so that the program can perform operations while the called method finished its task.

29. Explain the difference between “System.Array.Clone()” and “System.Array.CopyTo()” in C#?
S.no System.Array.Clone() System.Array.CopyTo()
1. Used for creating a new array containing elements of the original array Elements of existing array get copied into another existing array.
2. Does not require a destination array to exist Destination array must exist
30. Explain the difference between “as” and “is” operators used in C#?
"is" operator
  • Used to check compatibility of the object with a given type
  • Returns result as Boolean.
"as" operator
  • Used for the casting of the object to type or class
31. What is Thread and explain states of a thread in C#?

Hiring managers will be impressed if you have this information during C# interview questions. A Thread in C# is a set of guidelines or instructions that are executed, and enable the program to do concurrent processing. The concurrent processing of a program helps the developers handle more than one operation at a given time.

The different states of thread are listed below-
  1. Unstarted
  2. Running
  3. WaitSleepJoin
  4. Suspended
  5. Aborted
  6. Stopped
32. Explain nullable types in C#?

In C#, there is a special data type called the nullable types. To this data type, the developers can assign a normal range of values as well as null range of values.

33. How can we sort an array in C#?

In C#, you can sort an array using the Using Array.sort(array) function. This function will sort the elements in the entire one-dimensional Array using IComparable implementation for each element of the given Array.

34. What do you mean by stack and heap in C#?

In C#, Stack is used during the static memory allocation. The variables that are allocated on the stack are stored directly in memory and access to this memory is fast. Heap is used during the dynamic memory allocation. The variables that are allocated on heap have memory allocated during runtime and access to this memory is slow.

Note: If you are preparing for a C# interview, you can read our C# technical interview questions for in-depth knowledge.

Advantages
  • Easy to understand
  • Object and component-oriented
  • Faster and safer

C# has grown very rapidly and is used widely. It is mostly because of its versatile syntax and cross-platform support. Developers who are trained in Java, C+ or C++ will be easily and quickly able to work in C#. We have updated our C# interview questions for freshers. The lambda expressions, nullable value types, direct memory access, delegates, and enumerations are powerful features that simplify the language C++; and on top of it, these add-ons are not available in other languages, such as Java.

Latest Version

Read more about recent versions if you are preparing for C# interview questions. The latest version, C# 7.3, was released in 2018.

Development History

C# was developed by Microsoft around the year 2000 within the .NET initiative. Later, this language got approved by Ecma (ECMA-334) as a standard. Designed by Anders Hejlsberg, the current development of C# is being taken care of by Mads Torgersen.