As the other answers stated your given code does do the same thing, but could give performance issues for big collections since the entire collection is traversed when calling Count()
.
The following code should solve this:
var distinct = actions.Distinct();
uxButton.Enabled = distinct.Take( 2 ).Count() == 1;
Perhaps you could turn this into an extension method:
uxButton.Enabled = actions.Distinct().CountOf( 1 );
It seemed useful, so I added it to my library, along with a unit test.
/// <summary>
/// Returns whether the sequence contains a certain amount of elements.
/// </summary>
/// <typeparam name = "T">The type of the elements of the input sequence.</typeparam>
/// <param name = "source">The source for this extension method.</param>
/// <param name = "count">The amount of elements the sequence should contain.</param>
/// <returns>
/// True when the sequence contains the specified amount of elements, false otherwise.
////</returns>
public static bool CountOf<T>( this IEnumerable<T> source, int count )
{
Contract.Requires( source != null );
Contract.Requires( count >= 0 );
return source.Take( count + 1 ).Count() == count;
}