I have a C# application, it simply send a simple SQL script to the SQL Server, and shows the response from the server.

The code is like below:

```
static SqlConnection conn = new SqlConnection("Data Source=servername;Initial Catalog=dbname;User ID=username;Password=password");

static void Main(string[] args)
{
    conn.Open();
    while (Console.ReadLine() == "")
    {
        ShowData();
    }
    conn.Close();
}

static Stopwatch sw = Stopwatch.StartNew();

static void ShowData()
{
    var t1 = sw.ElapsedMilliseconds;
    var s = @"SELECT TOP (1) [t0].[GroupName] FROM [dbo].[Groups] AS [t0] WITH (NOLOCK) WHERE [t0].[GroupId] = '43ed86d4-42ef-4e6c-9a98-ba48c1f293e7'";

    var com = new SqlCommand(s, conn);
    var reader = com.ExecuteReader();

    if (reader.Read())
    {
        Console.WriteLine(reader[0]);
    }

    reader.Close();

    Console.WriteLine(sw.ElapsedMilliseconds - t1);
}

```

The application screenshot:  

![console application screenshot](https://i.stack.imgur.com/04MWF.png)

Wireshark screenshot:  

![wireshark screenshot](https://i.stack.imgur.com/KUU5c.png)

I pressed ENTER several times, the response time is inconsistent. In the last 6 times I pressed, the fastest response is 5ms, and the slowest one is 29ms. I'm not sure why, it seems all the response should be cached in the server.

BTW, I already profiled the SQL Server, these SQLs duration were all 0. The execution plan were both Clustered Index Seek.