To me an asynchronous call was always one that effectively ran in parallel with my other code
That's not strictly correct. Don't confuse threading with synchrony.
Asynchrony is saying to the computer "here's some code but don't run it now, run it after this has happened" (where "this" may be a database call or a time delay). This can be managed in many ways; you don't, for example have to run the waiting code immediately after the delay, you might want to put it in a queue at that point and pop each element off that queue in sequence (thus single-threaded but still asynchronous).
Look at .NET's Task-based Asynchronous Pattern (TAP), which allows you to write a Task in the format "Do this, wait for this, then do something else".
For example:
var parameters = ParseFromXml(input);
var data = await GetDataAsync(parameters);
return ProcessData(data); // This is the asynchronous code here
But the developer of that code doesn't have to make any decisions about threading (is SomethingElse() from one call being done in parallel with DoThis() from another call?), those decisions can all be made by an application/framework specific object called a SynchronisationContext.
This is excellent separation of concerns, but it does lead to confusion because there's an assumption that asynchrony and parallelisation are the same thing.
Partly, this is because we use the word synchrony to mean "the opposite of asynchrony" but that's not correct at all. As others have pointed out, synchrony is two things that exist or occur at the same time, but the opposite of asynchrony (in programming terms) is "run this code, one step after another, blocking all other code."
var parameters = ParseFromXml(input);
var data = GetData(parameters);
return ProcessData(data);
If this is a single-threaded environment, absolutely nothing else can happen while this process runs. In a multi-threaded environment, nothing else can happen in this thread while this process runs, which does allow for other processes in other threads, but there is nothing inherently multi-threaded about synchronous or asynchronous code.