Difference between free-form input via WolframAlpha[] and CTRL+=

WolframAlpha["query"] - https://reference.wolfram.com/language/ref/WolframAlpha.html

For example:

WolframAlpha["Solve[x^2+5x+6==0, x]"]


and

= and after

Solve[x^2+5x+6==0, x]


Both have have pretty similar output (cannot include it here because of sophisticated formatting).

Questions:

1. Does the both use WolframAlpha?
2. Is there any difference between them? If yes, what is the difference?
• They both should be using wolfram alpha as of version 8. See "With the new Mathematica 8, you can access the Wolfram|Alpha engine directly from within Mathematica. Inside a Mathematica notebook document, just type == at the beginning of a line; youâ€™ll get an orange Spikey icon indicating that Mathematica is ready to perform a Wolfram|Alpha query. " blog.wolframalpha.com/2010/12/06/… – Nasser Feb 21 at 20:17

Here is the summary from original M8 release page:

This guide should also be useful: Free-Form & External Input. While both things you mentioned are a part of integration of Wolfram|Alpha (W|A) and Wolfram Language (WL), the difference is in the interface, goal and type of output they give you. Free-form input (FFI) via CTRL+= is great, for example, for quick-typing of FFI and its quick automatic conversion into entities, units, and other Wolfram Knowledgebase things. Hence CTRL+= is great for quick discovering of various numerous built-in quantities and other bits of knowledge that is so large it is very hard to grasp via some general overview. CTRL+= attempts to give the best semantic interpretation of the specified free-form string as a WL expression and can be used inside other WL expressions. In that sense it is a quick-interface embodiment of its programatic form SemanticInterpretation (do not confuse with Interpreter, which is another wonderful related function working a bit differently). As they seek a WL expression as an output you can quickly test the boundaries and see the difference with WolframAlpha[...] function. For instance, try this out:

In[]:=SemanticInterpretation["tell me a joke"]
Out[]=\$Failed


and similarly:

As expected no WL expression form is found as there is none to find. On the other hand behold

This works as full W|A output is returned. WolframAlpha[...] interface embodiment is double-equal tap:

WolframAlpha[...] is great for controlled programmatic yield of various outputs, for instance

data= WolframAlpha["sun spots",
{{"SunspotsFullTimeSeries:SpaceWeatherData",1},"TimeSeriesData"}];
DateListPlot[data]


the code for which is automatically generated as explained HERE

• Thank you for great answer! Also "SemanticInterpretation" link (or maybe it should be inline code?) is broken. – vasili111 Feb 23 at 15:43
• @vasili111 thank you, fixed thee link. – Vitaliy Kaurov Feb 23 at 15:49